【问题标题】:Vibrate settings in froyofroyo 中的振动设置
【发布时间】:2010-10-01 07:23:50
【问题描述】:

我在 froyo 中读到,如果您使用 setVibrateSettings() 更改振动设置,它不会与 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 音频设置和 vib 值不同,如果我回到我的应用程序,vib设置也与我之前选择的不同。有什么想法吗?

【问题讨论】:

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


    【解决方案1】:

    试试下面的链接: 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...)

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2011-04-14
      • 1970-01-01
      • 1970-01-01
      • 2015-08-06
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-11-09
      相关资源
      最近更新 更多