2011-01-31 9 views
4

私はアンドロイドのための簡単な音楽アプリケーションを作っています。 これはうまくいきますが、マルチメディアボリュームを変更したいときは、アプリケーションから直接作成することはできません。 音量アップ/ダウンボタンをクリックすると、通話音量が変更されますので、別のアプリケーション(ゲーム)に行ってください。そのボタンをもう一度クリックすると、マルチメディア音量が変わります。Androidの電話番号の代わりにマルチメディアのボリューム

これらの音量ボタンは、アプリケーション全体ではなく、マルチメディアボリュームでのみ機能することを選択する方法はわかりますか?

public boolean onKeyDown(int keyCode, KeyEvent event) 
{ 
    if ( keyCode == KeyEvent.KEYCODE_VOLUME_DOWN || 
      keyCode == KeyEvent.KEYCODE_VOLUME_UP) { 
     //magic goes here 
    } else { 
     return super.onKeyDown(keyCode, event); 
    } 
} 

答えて

2

ありがとうございましたAudioManager。私はあなたが必要とする具体的な方法はsetStreamVolumeと信じています。ストリームのタイプはAudioManager.STREAM_MUSICになりますあなたは[here] [1]について読むことができます。

編集:私はこれをハイパーリンクにすることはできないと思います....だからhereはトップレベルのクラスへのリンクです...奇妙です。

[1]:http://developer.android.com/reference/android/media/AudioManager.html#setStreamVolume(int、int型、int型)

+0

私がテストしたほとんどの携帯電話では、音量値は 'onKeyUp'まで正しく更新されません...代わりにそのメソッドを処理する必要があります – yano

1

ビルトインクラスあなたが探している:

は、このためのデフォルトの方法があるかどうか、私は知りませんが、あなたは常にこの操作を行うことができ、あなたに非常に多くの

関連する問題