According to the following codes in /files/externallib.php upload():
if (!($fileinfo['component'] == 'user' and $fileinfo['filearea'] == 'private')) {
throw new coding_exception('File can be uploaded to user private area only');
} else {
// TODO MDL-31116 hard-coded to use user_private area.
$component = 'user';
$filearea = 'private';
}
That means, we cannot develop a mobile app which can upload file to moodle, e.g. submit file to assignment. Am I correct?