イヤホンからオーディオを再生する必要があります。デバイスでサウンドを再生するために AudioTrack を使用しています。オーディオ モードは STREAM_VOICE_CALL として設定されます。また、私のアクティビティでは、スピーカーフォンは次の方法でオフになっています。
AudioManager am;
am = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
am.setSpeakerphoneOn(false);
これは 2.3 デバイスで完全に動作するようです。ただし、2.1 では、サウンドは引き続きスピーカーから再生されます。
これを修正するために、次のように setMode() を使用してみました。
am.setMode(AudioManager.MODE_IN_CALL);
これで、2.1と2.3ではイヤピースから音が出ていましたが、2.3では全く出ないことがほとんどでした。また、setMode() はシステム全体の電話の状態に影響するため、アプリで使用すべきではないことをいくつかの場所で読みました。ここ: http://code.google.com/p/sipdroid/issues/detail?id=270
何か助けはありますか?