meine App ein Foto mit Absicht zu machen. Wenn ich mit Hochformat nehme, bekomme ich das Bild. aber wenn ich mein Gerät drehe und mit Querformat nehme, habe ich einen Fehler bekommen. sogar die Fehlermeldung zeigt auf (vielleicht) die falsche Zeile.Intent Kamera von Querformat Ausrichtung Ergebnis Fehler
offen Kamera:
Intent takePictureIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
if (takePictureIntent.resolveActivity(mainActivity.getPackageManager()) != null) {
startActivityForResult(takePictureIntent, REQUEST_IMAGE_CAPTURE);
}
auf Aktivitätsergebnis:
Bundle extras = data.getExtras();
imageBitmap = (Bitmap) extras.get("data");
ivImage.setImageBitmap(imageBitmap);
gibt Ergebnis wie erklärt. dann versuch ich es nochmal mit anderem code.
offen Kamera:
Intent intent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE);
fileUri = getOutputMediaFileUri(MEDIA_TYPE_IMAGE);
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
startActivityForResult(intent, REQUEST_IMAGE_CAPTURE);
auf Aktivitätsergebnis:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inSampleSize = 4;
imageBitmap = BitmapFactory.decodeFile(fileUri.getPath(), options);
ivImage.setImageBitmap(imageBitmap);
hat noch gleiches Ergebnis.
nach der Suche nach einer Lösung, sagte sie über save Instanz. i dies dann setzen (i Fragment verwenden)
@Override
public void onSaveInstanceState(Bundle outState) {
outState.putParcelable("file_uri", fileUri);
super.onSaveInstanceState(outState);
}
@Override
public void onActivityCreated(Bundle savedInstanceState) {
if (savedInstanceState != null)
fileUri = savedInstanceState.getParcelable("file_uri");
super.onActivityCreated(savedInstanceState);
}
immer noch nicht funktioniert und eine der Fehlermeldung zeigt auf
super.onCreate(savedInstanceState);
in onCreate (Bundle savedInstanceState) Funktion
jemand wissen, warum? oder vielleicht ein anderer alternativer Code mit Kamera.
Update, Fehlermeldung:
Könnte finden Klasse 'android.transition.Transition' nicht, von Verfahren mypackagename.fragment.HomeFragment.access referenzierten $ Super
und Warnmeldung
kann die virtuelle Methode 949 nicht auflösen: Landroid/Grafik/Bitmap; .getAllocationByteCount
Add 'android: screenOrientation = "Portrait"' innerhalb –
Wenn Sie Ihre App dann drehen möchten [versuchen, dies] (http://stackoverflow.com/questions/17945130/prevent-activity-restarting-when-orientation-changes) –
können Sie den Stacktrace buchen? – himanshu1496