0

J'ai lu que dans froyo si vous modifiez les paramètres de vibreur avec setVibrateSettings(), il ne se synchronise pas avec les paramètres de vibration SO. Ensuite, j'ai trouvé cette solution de contournement que les gens utilisent avec certaines des fonctions dans ce lien:Réglages du vibreur dans froyo

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

Cependant, que le code source, il y a deux appels à:

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

Ce sont la seule différence avec ce que j'essaie de faire dans mon code pour changer les réglages de vibration. Mais Settings.System.VIBRATE_IN_SILENT semble être supprimé en 2.2, donc quand je change les paramètres de vibration "normal, éteint, seulement en mode silencieux", alors je vais aux paramètres audio SO et la valeur vib est différente, et si je retourne à mon application, les paramètres vib sont aussi différent de ce que j'ai choisi avant. Des idées?

Répondre

0

Essayez le lien suivant: http://www.kiwidoc.com/java/l/p/android/android/8/p/android.provider/c/Settings.System

D'après ce que j'ai essayé, le réglage existent encore, mais pas exposé comme il était. Il peut toujours être défini à l'aide de Settings.System.putInt (...) il suffit de spécifier le nom "vibrate_in_silent".

Je suppose qu'un jour cela ne fonctionnera plus, je recommande donc de protéger votre code de toutes les manières possibles (vérifiez si le réglage existe en appelant d'abord getInt, ajoutez try-catch ...)