Я использую Phonegap 5.3.1 и Android 22. Я пытаюсь использовать Filegansfer api для телефонной передачи для передачи изображений на удаленный сервер.Доступ к файлам изображений на Android-устройстве с использованием схемы phonegap
var options = new FileUploadOptions();
options.fileKey="file";
options.fileName=imageData.substr(imageData.lastIndexOf('/')+1);
alert("The filename here is : " + imageData);
так вот ImageData печатает
content //com.android.providers.media.documents/document/image/image%3A53
и далее ниже код
imageData.substr(imageData.lastIndexOf('/')+1);
ли назначить options.fileName = "изображение% 3A53"
Это не имя изображения, которое у меня есть на устройстве. По-моему, это вызывает проблему.
javascript, используемый для запуска плагина FileTransfer, говорит, что файл успешно передан, но я не могу найти файл на сервере (запуск PHP).
Ответ сервера выглядит следующим образом:
получил ответ от сервера
Array
(
[file] => Array
(
[name] => image%3A53
[type] => image/jpeg
[tmp_name] => /tmp/php8qjZXN
[error] => 0
[size] => 137490
)
)
Также несколько сообщений говорят: Phonegap android unable to upload image using fileTransfer
Вы не можете использовать imageUri, что вы получите от успеха обратного вызова камеры в FileTransfer, вы должны сначала разрешить uri как имя файла:
navigator.camera.getPicture(function(imageURI){
window.resolveLocalFileSystemURI(imageUri, function(fileEntry) {
fileEntry.file(function(fileObj) {
var fileName = fileObj.fullPath;
//now use the fileName in your method
//ft.upload(fileName ,serverURL + '/ajax.php?fname=appuploadspotimage'...);
});
});
});
Любая помощь будет высоко оценена.
Правильный размер файла 137490 байт? Если это так, я бы сказал, что ваш сервер получает файл. Что вы найдете в '/ tmp/php8qjZXN'? –
Размер файла кажется правильным. Также я получаю следующий -bash: cd:/tmp/php8qjZXN: Нет такого файла или каталога – user563101
Можем ли мы увидеть PHP, который обрабатывает запрос и сохраняет файл? –