アクティビティの onResume() で camera.open() と onDestroy() で camera.release() を呼び出すカメラを使用する非常に安定したアプリケーションがあります。
ユーザーに連絡先を選択させるなど、別のアクティビティを起動する必要がある小さなタスクを実行するまでは、これで問題ありません。
問題は、アクティビティがフォアグラウンドを失うとすぐに onDestroy() が呼び出され、カメラが閉じられることです。次に、ユーザーが連絡先を選択するとすぐに、アクティビティに戻り、カメラが再び開きます。
連絡先アプリを呼び出して、カメラを閉じずに連絡先を選択したいのですが、アプリが戻るボタンやホームボタンなどで合法的にシャットダウンされている場合は、カメラをきれいに閉じる必要もあります。
デバイスはサムスン Galaxy カメラであり、カメラの開閉には各フェーズで約 2 秒かかり、またレンズが多少伸びるため、デバイスを手に持っていると煩わしい場合があるため、これは問題です。
アプリの真の終了と、私が呼び出した別のアクティビティのために単にバックグラウンドに置かれていることを区別する方法について何か提案はありますか?
ありがとう。