ByteArrayOutputStream zu einem FileBody
Ich habe einen Uri zu einem Bild, dass entweder aufgenommen oder aus der Galerie, die ich will, zu laden und zu komprimieren als JPEG mit 75% Qualität. Ich glaube, ich habe erreicht, dass mit dem folgenden code:
ByteArrayOutputStream bos = new ByteArrayOutputStream();
Bitmap bm = BitmapFactory.decodeFile(imageUri.getPath());
bm.compress(CompressFormat.JPEG, 60, bos);
Nicht, dass ich steckte es in eine ByteArrayOutputStream
genannt bos
muss ich dann hinzufügen, um eine MultipartEntity
um HTTP POST
einer website. , Was ich kann nicht herausfinden, wie konvertiert man die ByteArrayOutputStream zu einem FileBody.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Verwenden
ByteArrayBody
statt (verfügbar seit HTTPClient 4.1), trotz seines namens, es dauert eine Datei Namen:Wenn Sie stecken bleiben mit HTTPClient 4.0, verwenden
InputStreamBody
statt:(Beide Klassen auch Konstruktoren, nehmen Sie eine zusätzliche MIME-Typ string)
ich hoffe, es kann einigen helfen , können Sie erwähnen, der Typ der Datei als "image/jpeg" in FileBody wie unten code
müssen die jar-Dateien hinzufügen httpclient-4.2.2.jar,httpmime-4.2.2.jar in Ihrem Projekt.