0
サイズ制限を500KBに固定して私のサーバーにJPGファイルを送信します。このファイルは電話機のストレージに書き込まないでください(機密データが含まれています)。ファイルを作成せずにRequestBodyにJPGイメージを圧縮
私の入力は、カメラから返されたバイト配列です。今、このために
は、私はどのように私はこのサイズの制約と私のRequestBody
を作成することができます
public Observable<User> uploadPicture(byte[] pictureBytes) {
RequestBody pictureFormatted = RequestBody.create(MediaType.parse("image/*"), pictureBytes);
MultipartBody.Part picturePart = MultipartBody.Part.createFormData("confidentialPicture", "confidentialPicture.jpg", pictureFormatted);
return api.uploadPicture(picturePart);
}
をやって何ですか?私は画質を縮小することで大丈夫です。
画像の質を下げるには、Bitmap.compressメソッドを使用しますか?もしそうなら、問題は何ですか? – pskink
@pskink [このメソッドについて]話している場合(https://developer.android.com/reference/android/graphics/Bitmap.html#compress(android.graphics.Bitmap.CompressFormat、int、java.io.OutputStream ))OutputStreamが必要で、電話機のストレージに存在する出力ファイルなしでこれを実現する方法が見つかりません。 – Louis
'このサイズ制約でRequestBodyを作成するにはどうしたらいいですか? '。奇妙な質問。あなたは今のようにそうするでしょう。しかし、 'byte [] pictureBytes'に500000バイト以上が含まれていれば、それらを少なくする必要があります。 – greenapps