J'ai ajouté une préférence de case à cocher dans preferences.xml
. Il y a un fichier settings.java
qui a défini toutes les préférences. Maintenant, il y a un fichier java séparé qui affiche une notification quand un message arrive. Si la case à cocher est vrai, je voudrais rendre la notification silencieuse.Comment faire une notification silencieuse à l'aide de RingtoneManager
if(PreferenceManager.getDefaultSharedPreferences(Receiver.mContext).getString(Settings.PREF_SILENT_MODE, "").equals("true"))
//Make the notification silent ie.
else
Uri alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
notification.sound = alarmSound;
Il existe une méthode TYPE_NOTIFICATION
associée au gestionnaire des sonneries pour le type de notification du son. Y a-t-il un moyen de rendre ce silence?
Je sais qu'il existe un moyen de le rendre silencieux en utilisant AudioManager. setRingerMode(AudioManager.RINGER_MODE_SILENT);
Mais ici, le gestionnaire de sonnerie est utilisé.
Edit-- tout compris (drapeau est une valeur booléenne qui retourne le résultat de préférence de case de SharedPreferences)
settings.java
file-
public boolean checksilentmode(Context mContext)
{
SharedPreferences prefs= PreferenceManager.getDefaultSharedPreferences(mContext);
return prefs.getBoolean(PREF_SILENT_MODE,DEFAULT_SILENT_MODE);
}
autre java file-
`if(flag) //if flag is true ie silent mode is enabled.
{
alarmSound=null;
}
else
{
alarmSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);
}
notification.sound = alarmSound;`