J'ai testé mon application sur le SDK Android sur tout de 1.5 à 2.2 et le code de la caméra dans mon activité fonctionne très bien. L'exécuter sur un périphérique avec 2.1 fonctionne également. Mais la même application ne fonctionne pas avec 2.2 sur HTC Desire et Nexus One et les accidents de l'application. Des idées pour lesquelles ils pourraient se produire?Appareil photo se bloque dans Android 2.2
Am utilisant Importer android.hardware.Camera;.
intérieur onCreate J'ai ceci:
preview = (SurfaceView) findViewById(R.id.preview);
previewHolder = preview.getHolder();
previewHolder.addCallback(surfaceCallback);
previewHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
Et le rappel est
SurfaceHolder.Callback surfaceCallback = new SurfaceHolder.Callback() {
@Override
public void surfaceDestroyed(SurfaceHolder holder) {
camera.stopPreview();
camera.release();
camera = null;
}
@Override
public void surfaceCreated(SurfaceHolder holder) {
camera = Camera.open();
try {
camera.setPreviewDisplay(previewHolder);
} catch (Throwable t) {
Log.e(TAG, "Exception in setPreviewDisplay", t);
Toast.makeText(CameraActivity.this, t.getMessage(),
Toast.LENGTH_LONG).show();
}
}
@Override
public void surfaceChanged(SurfaceHolder holder, int format, int width,
int height) {
Camera.Parameters parameters = camera.getParameters();
parameters.setPreviewSize(width, height);
camera.setParameters(parameters);
camera.startPreview();
}
};
En général, la plupart SO des questions impliquant un accident Android finira par être ignorée, sauf si vous incluez un copier-coller de la trace d'erreur de Logcat . C'est facile à faire et aide souvent les autres développeurs à identifier le problème très rapidement. –
Il ne plante pas sur mon SDK et Android 2.1 que j'ai. Donc, ne vois pas d'erreurs dans le logcat (je l'ai essayé dans le SDK et cela a fonctionné). Crasher sur le téléphone d'un ami qui se trouve à quelques centaines de kilomètres. :( – Abhinav