0

Я прочитал, что в froyo, если вы измените настройки вибрации с помощью setVibrateSettings(), он не синхронизируется с настройками вибрации SO. Тогда я нашел обходной путь, который люди используют с некоторыми из функций в этой ссылке:Настройки вибрации в froyo

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 отличается, и если я вернусь в свое приложение, настройки вибро также отличается от того, что я выбрал раньше. Есть идеи?

ответ

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 ...)

Смежные вопросы