SurfaceView avec prévisualisation de la caméra n'est pas détruit

J'ai un Onglet Activité avec 2 onglets (activités). Chaque onglet est un 3d Open GL scène tiré sur le dessus d'une SurfaceView avec prévisualisation de la caméra.

Encore, selon l'orientation du périphérique, les onglets sont en train d'être réglé.

Le problème est que lorsque l'autre le début de l'activité, il appelle à la caméra.open(), ce qui génère une exception, en disant que la caméra de service n'est pas disponible.

En fait, le problème, c'est que la caméra n'est pas arrêté quand l'activité est suspendue, en d'autres termes onSurfaceDestroyed() n'est pas appelée pour les SurfaceView.
J'ai essayé d'arrêter l'appareil photo lorsque onPause() pour des activités est appelé, mais obtenir la même erreur encore.

Quelqu'un avait même des problèmes avec onglets activités? Une idée de comment faire surfaceview se détruit?

Avez-vous appeler à la fois .stopPreview() et .release() sur votre appareil photo de l'objet?
Oui, voir code ci-dessous.

OriginalL'auteur Kirill Volkov | 2011-11-24