私は、ユーザーがデバイス上で可聴アラートを発することを許可するコードを持っています。 Android 2.3以降では、プログラムで音量を上げてAudioManager.setStreamVolume
で音を鳴らしてもアラートを出すことができます。しかし、今Android 3.x以降でこれをやろうとすると、ネイティブの音量調整ウィジェットが画面に現れますが、現在の音量はまだゼロのままです。以下のコードは次のとおりです。ハニカムの音楽ストリームの音量を上げることができません
int currentVolume = audioMgr.getStreamVolume(AudioManager.STREAM_MUSIC);
int maxVolume = audioMgr.getStreamMaxVolume(AudioManager.STREAM_MUSIC);
audioMgr.setStreamMute(AudioManager.STREAM_MUSIC, false);
// If the current volume is not set to the maximum level
if (currentVolume < maxVolume) {
// Set the current volume to the maximum level
audioMgr.setStreamVolume(AudioManager.STREAM_MUSIC, maxVolume, AudioManager.ADJUST_RAISE);
}
私の質問は...何が、これは動作しなくなり、そのハニカムに変化しているのですか? setStreamVolume
の後にブレークポイントを設定し、手動でgetStreamVolume
を実行しました。それでもゼロに設定されていました。思考?
これはAndroid 2.3でも機能しました。興味深いことに、私がこれをしたとき、Groovesharkアプリは私のところで強制的に終了し、私は当時それを使用していませんでした。 – MattC