Die ähnliche SO Frage-Antworten stürzt meine App.Foto durch Kamera Absicht genommen ist auf Qualität zu verlieren
Ich mache ein Foto durch meine Kamera Absicht und sende es an meinen PHP-Server über das Netz, das es dann in einem Verzeichnis speichert. Es ist funktioniert gut. Das gespeicherte Foto ist jedoch von kompromittierter Qualität (~ 20 KB).
Ich kenne meinen Fehler. Ich lese die Android-Dokumentation, um zu erkennen, dass ich tatsächlich das Fotominiaturbild anstelle des Fotos selbst sende. Hier ist mein Code
Öffnen Sie Camera Intent, um ein Foto zu machen.
addImage = (ImageButton) findViewById(R.id.imageButton);
addImage.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Intent cameraIntent = new Intent(android.provider.MediaStore.ACTION_IMAGE_CAPTURE);
startActivityForResult(cameraIntent, CAMERA_REQUEST);
}
}
Empfangen des Bildes.
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == CAMERA_REQUEST && resultCode == RESULT_OK){
photo = (Bitmap) data.getExtras().get("data");
addImage.setImageDrawable(null);
addImage.setBackgroundColor(Color.parseColor("#ffffff"));
addImage.setImageBitmap(photo);
ByteArrayOutputStream baos = new ByteArrayOutputStream();
photo.compress(Bitmap.CompressFormat.JPEG, 100, baos);
byte[] photoByte = baos.toByteArray();
encodedImage = Base64.encodeToString(photoByte,Base64.DEFAULT);
}
}
Was möchte ich? Ich möchte einfach mein Originalbild (und nicht das Thumbnail) in Base64-codierte Zeichenfolge konvertieren (genau wie ich mit dem Thumbnail gemacht habe).
Jede Hilfe wird geschätzt.
[Fühlen Sie sich frei, Änderungen vorzuschlagen. :)]
Fast habe ich es. Aber irgendeine Idee über diesen Fehler? 'java.lang.RuntimeException: Fehler beim Liefern des Ergebnisses ResultInfo {who = null, request = 1337, result = -1, data = null} an Aktivität {example.srujan.com.sendimagedemo/example.srujan.com.sendimagemedo.MainActivity} : java.lang.NullPointerException' –
@SrujanBarai: Sie haben einen Fehler irgendwo in Ihrem 'onActivityResult()', mit einer 'NullPointerException'. Der Stack-Trace sollte Ihnen Ihre abstürzende Codezeile anzeigen. – CommonsWare
Ich akzeptiere die Datei als Bitmap-Bild, was ich nicht tun sollte. Es ist in der Zeile 'photo = (Bitmap) data.getExtras(). Get (" Daten ");' Ich kenne das Problem. Ich kenne die Lösung nicht. –