【问题标题】:How to turn off physical button's sound click (sound effects) in my Android app?如何在我的 Android 应用程序中关闭物理按钮的声音点击(音效)?
【发布时间】:2012-06-01 05:51:52
【问题描述】:

我正在开发一个允许用户将手放在设备上的 Android 应用,并且我想禁用物理按钮,这样用户就不会因不必要的点击而烦恼。

我已禁用 返回菜单搜索 按钮,具体如下:

@覆盖 公共无效 onBackPressed() {} @覆盖 public boolean onPrepareOptionsMenu(Menu menu) {return false;} @覆盖 公共布尔 onSearchRequested() {return false;}

我了解到禁用 home 键不受支持和/或不建议(尽管我愿意这样做)。

好的,现在我不知道如何禁用我已禁用的键的点击声音,它们只会不停地滴答作响,有没有办法将其关闭?

我只想为我的应用静音。如果不可能,我想知道以编程方式更改系统设置的替代方案,以便稍后在关闭或焦点更改时恢复它。

【问题讨论】:

  • @Keyser 我会环顾四周,但找不到。在同一主题上还有其他类似的问题 (stackoverflow.com/questions/8114365/…) 未得到解答。我想看看具体是哪个属性这样做的。
  • 我撤回我的声明:p 不确定了。但是您可以使用AudioManager 设置系统音量。当然,这适用于所有应用程序,但是您可以在 onPause 和 onStop 中恢复以前的音量,以使其看起来好像只有您的应用程序受到影响(尽管我不知道您将如何解决来电问题。一些听众?)

标签: android button


【解决方案1】:

您可以在应用启动时静音并在应用结束时取消静音

@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);
}

【讨论】:

  • 谢谢,我回家后试试这个。
  • 你需要为这个答案获得更多的爱!谢谢
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-08-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2023-04-11
  • 1970-01-01
相关资源
最近更新 更多