サイドボリュームボタンを無効にしたいので、ボリュームを制御する唯一の方法は、Androidアプリ内の専用アクティビティからです。次のコードを追加することで、すべてのアクティビティで無効にすることができました。
@Override
public boolean onKeyDown(int keyCode, KeyEvent event) {
Log.d(TAG, "onKeyDown = " + keyCode);
if (keyCode == KeyEvent.KEYCODE_VOLUME_DOWN) {
return true;
}
if (keyCode == KeyEvent.KEYCODE_VOLUME_UP) {
return true;
}
return super.onKeyDown(keyCode, event);
}
しかし、アプリから開始するアクティビティ(たとえば、ギャラリーアプリを開始する)で無効にする方法がわかりません。
「VolumeLocker」アプリが同様のことを行う可能性があることを私は知っています。