2010-11-08 4 views
5

Comment puis-je faire cela? Mon code actuel est indiqué ci-dessous:Android: Vibreur en fonction de la sélection cochée dans Paramètres du son> Général

final NotificationManager manager = (NotificationManager) context.getSystemService(Context.NOTIFICATION_SERVICE); 
Notification notification = new Notification(R.drawable.stat_sys_warning, System.currentTimeMillis());  
notification.defaults |= Notification.DEFAULT_SOUND; 
notification.flags |= Notification.FLAG_AUTO_CANCEL; 
Intent notificationIntent = new Intent(Intent.ACTION_MAIN, Uri.EMPTY, context, Activity....class).putExtra(...); 
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0); 
notification.setLatestEventInfo(context, title, text, contentIntent); 
manager.notify(1, notification); 

Répondre

2

Voir la documentation Notification#DEFAULT_ALL, ainsi que DEFAULT_VIBRATE dessous. Vous n'êtes pas indiquez actuellement que vous souhaitez que la configuration DEFAULT_VIBRATE (votre code actuel ne sélectionne que DEFAULT_SOUND.

notification.defaults |= Notification.DEFAULT_VIBRATE; 

Si vous souhaitez utiliser les paramètres de l'appareil par défaut pour les deux son et Vibrer, vous pouvez le faire en utilisant bitwise OU:

notification.defaults |= Notification.DEFAULT_SOUND | Notification.DEFAULT_VIBRATE; 

vous pouvez spécifier que vous souhaitez utiliser tous les paramètres de notification par défaut:

notification.defaults |= Notification.DEFAULT_ALL; 

En plus de cela, vous devez également vous assurer que vous avez le VIBRATE permission spécifié dans votre fichier AndroidManifest.xml:

<uses-permission android:name="android.permission.VIBRATE" /> 
Questions connexes