2013-07-05 7 views
0

Je suit ce lien http://www.vogella.com/articles/AndroidCamera/article.html#tutorial_cameraapiphoto de capture à l'aide caméra frontale

que j'ai changé cameraId = findFrontFacingCamera(); ligne à cameraId = findBackFacingCamera();

et écrire la méthode comme ceci:

private int findBackFacingCamera() { 
    int cameraId = -1; 
    // Search for the back facing camera 
    int numberOfCameras = Camera.getNumberOfCameras(); 
    for (int i = 0; i < numberOfCameras; i++) { 
     CameraInfo info = new CameraInfo(); 
     Camera.getCameraInfo(i, info); 
     if (info.facing == CameraInfo.CAMERA_FACING_BACK) { 
     Log.d(DEBUG_TAG, "back Camera found"); 
     cameraId = i; 
     break; 
     } 
    } 
    return cameraId; 
    } 

Et je modifie cette ligne camera.takePicture (null, null, nouveau PhotoHandler (getApplicationContext()));

à

try { 
     camera.takePicture(null, null, new PhotoHandler(getApplicationContext())); 
    } catch (Throwable e) { 
     Log.d("error",""+e); 
    } 

Je ne changèrent rien ETAIS

appareil Je vérifie sur Galaxy Fit

Donner erreur

07-05 07:09:06.159: D/error(26994): java.lang.NullPointerException 
+0

avez-vous initialisé l'appareil photo? S'il vous plaît donner plus de code –

+0

http://www.vogella.com/articles/AndroidCamera/article.html#tutorial_cameraapi voir ce code article est même à la même chose que je devais changer ci-dessus. – Anirban

+0

Est-ce que votre journal affiche "retour Appareil photo trouvé"? –

Répondre

1

Vous devez utiliser cette autorisation pour la caméra avant

<uses-feature android:name="android.hardware.camera.front" android:required="false" />

Jetez un oeil à this question.

Questions connexes