2016-10-24 1 views
0

Ich versuche, eine Frontkamera auf meinem Gerät zu öffnen, aber nichts, was ich versuche, funktioniert und die Rückkamera öffnet sich immer. Ich benutze das LG G4 Gerät.Offene Frontkamera in Android

File file; 
    try { 
     File dir = new File(Environment.getExternalStorageDirectory()); 
     file = File.createTempFile("temp.png", dir); 
    } catch (IOException e) { 
     AndroidExceptionHandler.handle(e); 
    } 
    Intent cameraIntent = new Intent(MediaStore.ACTION_IMAGE_CAPTURE); 
    cameraIntent.putExtra(MediaStore.EXTRA_OUTPUT, Uri.fromFile(file)); 
    cameraIntent.putExtra("android.intent.extras.CAMERA_FACING", 1); 

    startActivityForResult(cameraIntent, REGISTRO_PONTO_IMAGE_CAM); 

Was mache ich falsch?

Antwort

1

Sie gehen davon aus, dass ein undokumentiertes, nicht unterstütztes Intent Extra von allen Kamera-Apps auf allen Geräten berücksichtigt wird.

Es gibt ~ 2 Milliarden Android-Geräte, die aus tausenden von Gerätemodellen bestehen. Diese Gerätemodelle werden mit Hunderten verschiedener Kameraanwendungen ausgeliefert. Benutzer können auch Kamera-Apps selbst installieren. Jede dieser Hunderte von Kamera-Apps kann sein, was Ihre ACTION_IMAGE_CAPTURE Anfrage behandelt. Und keiner von ihnen muss ein android.intent.extras.CAMERA_FACING extra ehren.

Sie können gerne das Extra auf die Intent setzen, und es ist möglich, dass es Kamera-Apps gibt, die darauf achten werden. Sie sollten nicht davon ausgehen, dass eine Kamera darauf achten wird, und es bleibt dem Benutzer überlassen, welche Kamera er für die Aufnahme verwenden soll.

Verwandte Themen