私は Loopj のandroid-async-httpを使用していますこれは私のコードです:
File file = new File("sdcard/food.jpg");
params.put("image", file);
私の問題は、php サーバーが画像をapplication/octet-stream
ではなく として受け取ったことですimage/jpg
。、などimage/jpg
のタイプのファイルをアップロードしたサーバー担当者のホワイトリストとして必要です。image/jpg
image/png
更新 1
アプリケーションにコンテンツ タイプ パラメータを追加しようとしました。ただし、php コードは引き続きapplication/octet-stream
.
params.put("image", new FileInputStream(file), "image/jpg");
更新 2
私はプロジェクトを進める必要があるので、私たちが現在行っていることは、Exif を使用して MIME スニッフィングを実装することをサーバー担当者に提案することです。PHPでは、 exif_imagetype()でそれを行います。これまでのところ、すべて順調です。Androidで実装可能なソリューションが見つかるまで、この質問を開いたままにします。