4

私は、ユーザーがデバイスに手を置くことができるAndroidアプリを開発しています。ユーザーが不要なクリックに悩まされないように、物理的なボタンを無効にしたいです。

次のようにして、戻るメニュー検索ボタンを無効にしました。

@オーバーライド
public void onBackPressed(){}

@オーバーライド
public boolean onPrepareOptionsMenu(Menu menu){return false;}

@オーバーライド
public boolean onSearchRequested(){falseを返す;}

そして、ホームキーを無効にすることはサポートされていないか、アドバイスされていないことを学びました(私はそれを望んでいますが)。

さて、無効にしたキーのクリック音を無効にする方法がわかりませんでした。キーを押し続けるだけです。オフにする方法はありますか?

アプリ専用にミュートしたいのですが。不可能な場合は、システム設定をプログラムで変更し、終了時またはフォーカス変更時にシステム設定を復元する代替方法について知りたいと思います。

4

1 に答える 1

20

アプリの起動時にサウンドをミュートし、終了時にミュートを解除できます

@override
public void onResume(){
    super.onResume();
    AudioManager mgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
    mgr.setStreamMute(AudioManager.STREAM_SYSTEM, true);
}


@override
public void onPause(){
    super.onPause();
    AudioManager mgr = (AudioManager)getSystemService(Context.AUDIO_SERVICE);
    mgr.setStreamMute(AudioManager.STREAM_SYSTEM, false);
}
于 2012-05-25T17:17:10.050 に答える