0
アンドロイドデバイスギャラリーからサーバーに画像をアップロードしようとしています。しかし、選択した画像拡張子はjpg/png/gifの形式ではありません。これは不明な名前で "image%3A55766"という名前で保存されています。誰かがこれを克服するのを手伝ってもらえますか?前もって感謝します。同じコードがiOSデバイスで正常に動作しています。私は今までこれを試しました。アンドロイドデバイスからサーバーに画像をアップロードするときにファイルの拡張子が間違っています
<script>
function getPhoto(source) {
navigator.camera.getPicture(onPhotoURISuccess, onFail, {
\t \t quality: 25,
\t \t destinationType: Camera.DestinationType.FILE_URI,
\t \t sourceType: Camera.PictureSourceType.SAVEDPHOTOALBUM
\t });
}
function onPhotoURISuccess(imageURI) {
\t var options = new FileUploadOptions();
\t options.fileKey="file";
\t options.fileName=imageURI.substr(imageURI.lastIndexOf('/')+1);
\t options.mimeType="image/jpeg";
\t var params = new Object();
\t options.params = params;
\t var ft = new FileTransfer(); \t \t
\t ft.upload(imageURI, encodeURI("http://server.net/project/php/uploads.php"), win, fail, options); \t \t \t
}
function win(r) {
\t console.log("Code = " + r.responseCode);
\t console.log("Response = " + r.response);
\t console.log("Sent = " + r.bytesSent);
} \t \t
function fail(error) {
\t alert("An error has occurred: Code = " + error.code); \t
} \t
</script>
document.getElementById('gal1').innerHTML='<a href="javascript:void(0)" onclick="getPhoto(pictureSource.SAVEDPHOTOALBUM)"><img src="../images/gallery.png"></a>';
\t \t \t
次は私のLogcatに取得していた情報です:
File locaton is: /storage/emulated/0/Pictures/Screenshots/Screenshot_2016-05-13-21-56-20.png
upload content://com.android.providers.media.documents/document/image%3A55766 to http://server.net/project/php/uploads.php
fileKey: file
fileName: image%3A55766
mimeType: image/jpeg
params: {}
trustEveryone: false
chunkedMode: true
headers: null
objectId: 1
httpMethod: POST
Content Length: 259650