2

電話が何かを再生しているかどうかを知る方法はありますか? たとえば着信音。

電話がうまく機能せず、着信音のない電話がかかってくることがあります。つまり、着信画面は見えますが、何も聞こえません (もちろん無音ではありません)。それは時々起こります。

そこで、着信コール (レシーバー) を検出してデフォルトの着信音を再生するプログラムを作成しました。もう一度再生して強制的に再生するので、電話が故障したときにかなりうまく機能します。

問題は、電話が機能するときに発生します。その場合、両方を同時に聞くことができ(電話と私の)、ひどい音がするからです!

したがって、次の2つのうちの1つを行う必要があります。

-電話が正常に機能していることを検出する (鳴っている) ため、何も再生する必要はありません。-または、現在の呼び出し音 (ある場合) を停止し、常に自分で再生します。

何か助けはありますか?

PS: isMusicActive() を試しましたが、リンギングでは機能しません。

4

2 に答える 2

0

このページでは、オーディオ フォーカスを管理する方法について詳しく説明しています。onAudioFocusedChangedListener何が再生されているかを常に更新するように実装できます。

isMusicActive()@raghav が指摘しているように、この方法も役立つ場合があります。

于 2012-06-30T18:56:54.700 に答える
0

AudioManager でisMusicActive ()メソッドを使用してみてください。システム全体で機能すると確信していますが、試してみてうまくいかない場合は、ここに投稿してください。

于 2012-06-30T18:49:10.147 に答える