5

Unser Kamerabild dauert etwa 10-15 Sekunden (aufgrund der speziellen Kamera-Hardware). Was ich brauche, ist während dieses Prozesses von 10-15 Sekunden, ich möchte nicht, dass der Benutzer die Bildschirmausrichtung ändert.Wie können wir die Ausrichtung des Kamerabilds während des Kameraerfassungsvorgangs sperren?

Ich habe den Takepicture-Aufruf in DoInBackground of Async Aufgabe platziert.

Im OnPreExecute() Methode I

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_NOSENSOR);

Und in OnPostExecute gesetzt haben platziert I

setRequestedOrientation(ActivityInfo.SCREEN_ORIENTATION_SENSOR); 

Diese Lösung für mich nicht funktioniert und bewirkt, dass die Kamera und Gerät sein abgestürzt und ich musste das Gerät neu starten.

+0

Dieser Link scheint relevant: http://stackoverflow.com/questions/2366706/how-to-lock -Orientierung während der Laufzeit – AnxGotta

+0

@AnxGotta Die obige Lösung funktioniert nicht für mich in Tabletten aber funktioniert gut in Handys. – Velivala

+1

Wenn es abstürzt .. würde das Posten des Stacktrace helfen, das Problem zu erklären. Es wird wahrscheinlich ein Problem mit etwas sein, was du tust. – JoxTraex

Antwort

2

Haben Sie versucht, die Ausrichtung vom AndroidManifest zu blockieren? durch Hinzufügen der folgenden Zeile in Ihrer Kamera Aktivität

<activity android:label="@string/activity_name" android:screenOrientation="portrait" /> 

oder

<activity android:label="@string/activity_name" android:screenOrientation="landscape" /> 
+0

Das ist es. Vielen Dank.. –

Verwandte Themen