私は Android AudioRecord アプリを使用しています。release()
スクリプトの最後で AudioRecord オブジェクトのメソッドを呼び出さないと、電話を再起動するまで正しく動作しません。
アプリがクラッシュした場合 (テスト中に時々発生し、予期しないバッファー オーバーフローが発生した場合など)、毎回電話を再起動する必要があるため、このプロジェクトに取り組んでいるとき、これは大きな問題になります。
finalize()
AudioListener クラスのメソッド内にバッファを解放するメソッドがあり、それらonStop()
をメインのアクティビティからも呼び出します。
アプリがフリーズまたはクラッシュすると、これらのどちらも機能しないようです。リリース アクションをエラー ハンドラーにアタッチする方法や、アプリがコードを実行してクラッシュ後でもリソースを適切に解放することを保証する一般的な方法はありますか。
助けてくれてありがとう。