Domanda

Ho letto che a Froyo, se si modificano le impostazioni vibrare con setVibrateSettings() non lo fa di sincronizzazione impostazioni con SO vibrazione. Poi ho trovato questa soluzione che la gente usa con alcune delle funzioni in questo link:

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

Tuttavia, che il codice sorgente ci sono due chiamate:

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

Questa è l'unica differenza con quello che cerco di fare nel mio codice per modificare setttings vibrazione. Ma Settings.System.VIBRATE_IN_SILENT sembra essere rimossi in 2.2, così quando ho modificare le impostazioni di vibrazione "normale, fuori, solo nel silenzio", poi vado a SO impostazioni audio e il valore VIB è diverso, e se torno alla mia app, impostazioni VIB sono anche diverso da quello che selezionato prima. Tutte le idee?

È stato utile?

Soluzione

Prova il seguente link: http: // www .kiwidoc.com / java / l / p / android / android / 8 / p / android.provider / c / Settings.System

Da quello che ho provato, l'impostazione esistono ancora, ma non esposta come ha usato essere. Si può ancora essere impostato utilizzando il Settings.System.putInt (...) basta specificare il nome di "vibrate_in_silent".

credo che un giorno questo lavoro non è più così mi consiglia di proteggere il proprio codice in ogni modo possibile (controllo se l'impostazione esistono chiamando getInt prima, aggiungere try-catch ...)

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top