简体   繁体   English

如何在Android中禁用按键声音?

[英]How to disable key-tap sound in android?

I want to enable/disable key-tap sound in android version higher then 4.2. 我想在高于4.2的Android版本中启用/禁用按键声音。 There are any way to change default setting through programming. 有任何方法可以通过编程更改默认设置。 Thanx in advance. 提前感谢。

You can mute the sound when your app starts and unmute when it finishes using AudioManager 您可以使用AudioManager在应用启动时将声音静音,并在应用结束时取消静音

@override
public void onResume(){
    super.onResume();
    // this mute the Sound
    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);
}

You can do this in two ways 您可以通过两种方式执行此操作
1) In XML by setting tag android:soundEffectsEnabled true or false 1)在XML中,通过将标签android:soundEffectsEnabled设置android:soundEffectsEnabled true或false
2) In Activity by pragmatically setSoundEffectsEnabled(true/false). 2)在活动中通过实用地设置setSoundEffectsEnabled(true/false).

Yes, there is a way. 是的,有办法。 There is an attribute and a method if you want to enable/disable. 如果要启用/禁用,则有一个属性和方法。

android:soundEffectsEnabled 机器人:soundEffectsEnabled

Boolean that controls whether a view should have sound effects enabled for events such as clicking and touching. 布尔值,控制视图是否应为诸如单击和触摸之类的事件启用声音效果。

Here you go.

No need for audio manager or muting for sound stream of system. 无需音频管理器或静音系统的声音流。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM