Ho un'attività di tabulazione con 2 schede (attività). Ogni scheda ha una scena 3D Open GL disegnata sopra un SurfaceView con l'anteprima della fotocamera.SurfaceView con l'anteprima della telecamera non viene distrutto
Tuttavia, a seconda dell'orientamento del dispositivo, le schede vengono scambiate.
Il problema è che quando si avvia l'altra attività, chiama camera.open(), che genera un'eccezione, dicendo che il servizio fotocamera non è disponibile.
In realtà, il problema è che la telecamera non viene arrestata quando l'attività è in pausa, in altre parole su SurfaceDestroyed() non viene chiamato per SurfaceView. Ho provato a fermare la telecamera quando onPause() per le attività viene chiamato, ma ottiene ancora lo stesso errore.
Qualcuno ha avuto gli stessi problemi con le attività a schede? Qualche idea su come far distruggere la vista della superfice?
hai chiamato sia .Rilasciare '.stopPreview()' e '()' sul vostro oggetto fotocamera? –
Sì, vedere il codice qui sotto. –