入ってくる電話でアプリを殺します
-
26-10-2019 - |
質問
うまくいけば、誰かにとって簡単なものですが、私に問題を引き起こします。
サウンドファイルをループするアプリがあります。アプリがバックグラウンドで音楽を再生し続けることを望んでいるので、私にはオンポースでコードがありません。
入ってくる呼び出しを受信した場合、アプリを閉じる必要があります。
OnPauseにコードを追加してアクティビティを閉じて、Mediaplayerを停止できます。ただし、アプリが起動した場合、これによりアプリが停止します。
入ってくる呼び出しを検出して、内部のオンポーズをチェックするにはどうすればよいですか?
解決
着信コールを検出するために、アクションAndroid.intent.action.phone_stateのアクションにBroadcastReceiverを登録します。これは、電話状態に変更があるときに放送されます。受信意図には、電話の状態を説明する追加の文字列変数TelephonyManager.extra_stateがあります。この状態がTelephonymanager.extra_state_ringingである場合、別の追加の文字列変数TelephonyManager.extra_incoming_numberがあります。この変数には、着信電話番号が含まれています。状態がTelephonymanager.extra_state_ringingでない場合、この変数は存在しないことに注意してください。
ソース : http://www.androiddevblog.net/android/detecting-incoming-and-colls-in-android
基本的に、ブロードキャストレシーバーを登録すると、携帯電話に興味があるブロードキャスト通知を聞いてから、それに応じて行動できます。
他のヒント
あなたがする必要はありません。 Androidはアプリを一時停止することを処理します - テレフォニーマネージャーを使用して、Aplicationを停止するかどうかを判断する必要があります。適切な方法は、これをonPause()メソッドで処理することです