5

私は現在、ユーザーがいくつかのエクササイズを実行している間、内部スピーカーを介して音声フィードバックを提供するアプリをプログラミングしています。

ここで、ユーザーの心拍を記録し、3.5mmジャックで電話に接続された聴診器を通して呼吸する機能を追加したいと思います。問題は、ジャックを差し込むと、電話がイヤピースが接続されていると見なし、イヤピースを介して音が再生されるため、スピーカーから音が再生されないことです。

私が達成したいのは、内蔵スピーカーで音を再生しながら、電話に接続された聴診器で音を録音することです。

基本的に、私はサウンドを再生するためにMediaPlayerとTextToSpeechの2つの方法を使用します。

私はインターネットで検索し、これらの記事を見つけました:

Androidのスピーカーからサウンド出力を強制する

BluetoothヘッドセットでTTSを再生したい

彼らが私にやるように言ったことは、マニフェストにパーミッションMODIFY_AUDIO_SETTINGSを追加することです

変数の宣言:

MediaPlayer mediaPlayer; 
AudioManager mAudioManager;
HashMap<String, String> mHashAlarm = new HashMap<String, String>();

OnCreateメソッドの場合:</ p>

mAudioManager = (AudioManager) getSystemService(Context.AUDIO_SERVICE);
mAudioManager.setSpeakerphoneOn(true);
mediaPlayer = MediaPlayer.create(context, R.raw.ding);
mHashAlarm.put(TextToSpeech.Engine.KEY_PARAM_STREAM, String.valueOf(AudioManager.STREAM_MUSIC));
...
tts.speak(text, TextToSpeech.QUEUE_FLUSH, mHashAlarm);

しかし、どちらも機能しません。

誰かがこの機能を達成する方法を知っていますか?どんなアイデアでも大いに役立ちます。ありがとう。

4

1 に答える 1

-1

オーディオスプリッターを購入するだけです...その後、2つのポートを取得して、1つに外部マイクを接続し、別のスピーカーにスピーカーを接続します....

于 2020-09-28T21:11:41.527 に答える