J'ai essayé d'obtenir une notification d'un téléchargement réussi d'un système d'asyncaptage pour travailler toute la journée. Je ne reçois aucune erreur de mon code actuel mais je ne peux pas obtenir la notification de montrer dans la barre de notification (ou nulle part ailleurs). Je n'ai aucun message dans logcat et aucune notification n'apparaît dans la barre de notification. Ceci est mon code:
Notification mNotification = new Notification(icon, tickerText, when); CharSequence contentTitle = "upload completed."; CharSequence contentText = "upload completed."; Intent notificationIntent = new Intent(context, CastrActivity.class); PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, PendingIntent.FLAG_NO_CREATE); mNotification.contentIntent = contentIntent; mNotification.setLatestEventInfo(context, contentTitle, contentText, contentIntent); mNotificationManager.notify(NOTIFICATION_ID, mNotification);
5 Réponses :
Essayez ceci:
NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); int icon = R.drawable.icon; // icon from resources CharSequence tickerText = "Any thing"; // ticker-text long when = System.currentTimeMillis(); // notification time Context context21 = getApplicationContext(); // application Context CharSequence contentTitle = "Anything"; // expanded message title CharSequence contentText = (CharSequence) extras.get("message"); // expanded message text Intent notificationIntent = new Intent(this, MainStart.class); PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0); // the next two lines initialize the Notification, using the configurations above Notification notification = new Notification(icon, tickerText, when); notification.defaults |= Notification.DEFAULT_VIBRATE; notification.defaults |= Notification.DEFAULT_LIGHTS; notification.defaults |= Notification.DEFAULT_SOUND; notification.flags |= Notification.FLAG_AUTO_CANCEL; /* long[] vibrate = { 0, 100, 200, 300 }; notification.vibrate = vibrate; notification.ledARGB = Color.RED; notification.ledOffMS = 300; notification.ledOnMS = 300;*/ notification.setLatestEventInfo(context21, contentTitle, contentText, contentIntent); mNotificationManager.notify(Constants.NOTIFICATION_ID, notification);
Je rencontre des problèmes similaires avec cela comme je l'ai auparavant. Notification de l'intentionIntent = nouvelle intention (ceci, castrecorder.class); Cette ligne est marquée par Eclipse et la seule résolution est de supprimer les arguments. En outre, cela est appelé dans une classe qui s'étend sur l'asyncaptage et la getactivité () ne fonctionne pas.
J'ai créé la classe à afficher des notifications: Comment utiliser cette classe: p> Ajouter une autorisation Android .permission.Vibrate code> p> p>
Je suis désolé mais qu'est-ce que appconfig? Y a-t-il une bibliothèque dont j'ai besoin pour inclure cela? Eclipse ne semble pas le savoir s'il ya donc je devrais l'ajouter à mon chemin de construction.
Appconfig est une classe et la notification is_notification est un élément statique que vous pouvez supprimer ce forfait de référence = nouveau paquet (); bundle.putboolcan (appconfig.is_notification, vrai); NOTIFYINTENT.POUPTEXTRAS (BUNDLE);
Malheureusement, je n'obtiens toujours aucune notification envoyée. Je l'appelle de la méthode onpostexecute () d'une classe d'asyncaptage. Je confirme que l'asyncaptage est terminé par un message dans LOGCAT, mais je n'ai aucune notification envoyée à la barre de notification.
Bonjour, je l'ai essayé avec AsynccTask, il fonctionne que vous pouvez télécharger la source d'ici: webheavens.com/asynccttaskdemo.rarr " a>
Après avoir été détourné sur d'autres problèmes avec l'application, je suis finalement retrouvé pour essayer cela. Ça a marché! Merci!
@Munishkapoor Comment démarrer mon application pendant qu'un utilisateur clique sur la notification?
@Munishkapoor im obtenir ce appconfig ne peut pas être résolu à une variable
Une autre chose à essayer est de vous assurer que votre manifeste contient
<permission android:name="android.permission.STATUS_BAR_SERVICE" android:protectionLevel="signature" />
Même si votre problème est résolu, je vais simplement afficher comment j'ai résolu mon problème que la notification n'était pas montrée, peut-être peut-être aider les autres personnes à lire les réponses: P>
Dans mon bâtiment de notification, j'avais manqué l'icône. Dès que j'ai ajouté quelque chose comme setsmallicon (r.drawable.ic_launcher) code> la notification a été affichée. P>
Oui, travaillé pour moi non plus. Première fois de travailler avec des notifications. Merci beaucoup!
Exactement! Merci beaucoup!
Travaux! Merci beaucoup. Althoublement Android devrait simplement choisir l'icône de lancement par défaut si le développeur n'a pas défini ceci.
Je viens de perdre de nombreuses heures à essayer de comprendre ce problème. Une petite icône panoramique. Que Dieu te bénisse.
J'ai une icône mais la notification toujours ne fonctionnait pas, j'ai perdu tant d'heures, mais quand j'ai changé l'icône pour tester, il a commencé à travailler, il s'agissait donc d'une question d'icône. Merci beaucoup mate!
Pour moi, cela a continué à se produire et je ne savais pas pourquoi, mais le problème était que l'icône que je me couche était trop grande, il me donnait donc une erreur aléatoire. P>