次のコードを使用してアプリケーションのメディアプレーヤーのオーディオストリームを設定しようとしましたが、これを行うとエミュレータでサウンドが聞こえません。私がプレーヤーのストリームを設定しないと、オーディオは正常に再生されます。私はこれを間違って使っていると確信していますが、どのように助けてくれるのですか?Android MediaPlayer - STREAM_ALARMでの再生方法
MediaPlayer player = MediaPlayer.create(getApplicationContext(), R.raw.test_audio);
AudioManager audioManager = (AudioManager) getApplicationContext().getSystemService(Context.AUDIO_SERVICE);
audioManager.getStreamVolume(AudioManager.STREAM_ALARM);
audioManager.setStreamVolume(AudioManager.STREAM_ALARM, audioManager.getStreamMaxVolume(AudioManager.STREAM_ALARM), AudioManager.FLAG_REMOVE_SOUND_AND_VIBRATE);
player.setAudioStreamType(AudioManager.STREAM_ALARM);
player.start();
注:既にマニフェストにMODIFY_AUDIO_SETTINGS権限を追加しました。
ありがとうございます!
私はplayer.prepare()で試しましたが、何の違いもありませんでした。まだオーディオは再生されていません。私は後で私のアプリケーションで使用される変数にストリームボリュームを格納していた、私は割り当てを一時的にデバッグを助けるために取り出した。 – James