0

私たちのアプリは MediaPlayer を使用して効果音を再生しています。ユーザーが電話を無音にしている場合 (たとえば、バイブレーションまたはサイレントに設定し、ヘッドフォンを接続していない場合) は再生しないようにしたいと考えています。

デフォルトでは、システム状態を尊重しません。サウンドは関係なく再生されます。サウンドの再生を停止するために使用できますAudioManager.getRingerMode()が、(a) ハッキングのように感じられ、(b) ヘッドフォン ケースを処理できません。ヘッドフォンで音楽を聴いているときに着信音を消してしまった場合は、'再生するサウンドが好きです。

これを行う方法はありますか?

4

1 に答える 1

1

それに応じてオーディオを一時停止またはミュートするには、ロジックgetRingerMode()と を組み合わせて使用​​する必要があるようです。isWiredHeadsetOn()

注: isWiredHeadsetOn()API 14 では何らかの理由で廃止されましたが、ヘッドフォンが接続されているかどうかを確認する唯一の方法として残っています。ドキュメントの状態:

ヘッドセットが接続されているかどうかを確認するためにのみ使用します。

ここでそれについて読んでください。

はい、これを行う方法はありますが、それがまさにあなたが探していたものかどうかはわかりません.

于 2013-10-09T21:50:45.430 に答える