Android Erreur lors de la Caméra.open()

je veux juste essayer d'Accéder à ma Caméra sur Android. Je ne sais pas comment je peux obtenir les journaux d'erreur, mais j'obtiens une erreur lorsque j'appelle la fonction Appareil photo.open().

Im en utilisant le SDK exemple de Code, mais cela n'a pas fonctionne.

J'ai essayé de définir mCamera à null avant de le relâcher. Et oui, j'ai placé l'autorisation de l'manifest.xml

elle na pas fonctionne avec l'émulateur, même avec mon htc

package com.example.android.apis.graphics;
import android.app.Activity;
import android.content.Context;
import android.hardware.Camera;
import android.os.Bundle;
import android.view.SurfaceHolder;
import android.view.SurfaceView;
import android.view.Window;
import java.io.IOException;
public class CameraPreview extends Activity {    
private Preview mPreview;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//Hide the window title.
requestWindowFeature(Window.FEATURE_NO_TITLE);
//Create our Preview view and set it as the content of our activity.
mPreview = new Preview(this);
setContentView(mPreview);
}
}
class Preview extends SurfaceView implements SurfaceHolder.Callback {
SurfaceHolder mHolder;
Camera mCamera;
Preview(Context context) {
super(context);
//Install a SurfaceHolder.Callback so we get notified when the
//underlying surface is created and destroyed.
mHolder = getHolder();
mHolder.addCallback(this);
mHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
public void surfaceCreated(SurfaceHolder holder) {
//The Surface has been created, acquire the camera and tell it where
//to draw.
mCamera = Camera.open();
try {
mCamera.setPreviewDisplay(holder);
} catch (IOException exception) {
mCamera.release();
mCamera = null;
//TODO: add more exception handling logic here
}
}
public void surfaceDestroyed(SurfaceHolder holder) {
//Surface will be destroyed when we return, so stop the preview.
//Because the CameraDevice object is not a shared resource, it's very
//important to release it when the activity is paused.
mCamera.stopPreview();
mCamera.release();
mCamera = null;
}
public void surfaceChanged(SurfaceHolder holder, int format, int w, int h) {
//Now that the size is known, set up the camera parameters and begin
//the preview.
Camera.Parameters parameters = mCamera.getParameters();
parameters.setPreviewSize(w, h);
mCamera.setParameters(parameters);
mCamera.startPreview();
}
}
  • Afficher le message d'erreur dans le Journal. Pour les erreurs, soit utiliser le logcat dans Eclipse ou commencer logcat à partir du terminal/ligne de commande
InformationsquelleAutor c0nstan | 2011-11-24