在froyo中振动设置

时间:2010-10-01 07:23:50

标签: android silent vibrate android-audiomanager android-2.2-froyo

如果您使用setVibrateSettings()更改振动设置,我会在froyo中读到它,但它与SO振动设置不同步。然后我发现这个解决方法是人们使用此链接中的一些功能:

https://android.googlesource.com/platform/packages/apps/Settings/+/froyo-release/src/com/android/settings/SoundSettings.java

但是,该源代码有两个调用:

 173        boolean vibeInSilent = (Settings.System.getInt(
 174             getContentResolver(),
 175             Settings.System.VIBRATE_IN_SILENT,
 176             1) == 1);

 227        Settings.System.putInt(getContentResolver(),
 228             Settings.System.VIBRATE_IN_SILENT,
 229             vibeInSilent ? 1 : 0);

这是我在代码中尝试更改振动设置的唯一区别。但是Settings.System.VIBRATE_IN_SILENT似乎在2.2中删除了,所以当我将振动设置改为“正常,关闭,仅在静音”时,我会转到SO音频设置并且振动值不同,如果我回到我的应用程序,振动设置也与我之前选择的不同。有什么想法吗?

1 个答案:

答案 0 :(得分:0)

请尝试以下链接: http://www.kiwidoc.com/java/l/p/android/android/8/p/android.provider/c/Settings.System

根据我的尝试,该设置仍然存在,但不像过去那样暴露。它仍然可以使用Settings.System.putInt(...)设置,只需指定名称“vibrate_in_silent”。

我想有一天这将不再有效,所以我建议以任何可能的方式保护你的代码(通过首先调用getInt检查设置是否存在,添加try-catch ...)

相关问题