使用我的通知系统,当发送通知时,我希望能够点击通知并将其发送给我的应用程序。但是,使用我当前的代码,它不会这样做。我该如何解决这个问题?
public void causeNotification(CharSequence contentText, CharSequence tickerText) {
Log.d(TAG, "Sending notification - \"" + contentText + "\"");
String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);
int icon = R.drawable.neoseeker_swoosh;
long when = System.currentTimeMillis();
Notification notification = new Notification(icon, tickerText, when);
notification.defaults |= Notification.DEFAULT_ALL;
notification.defaults |= Notification.FLAG_AUTO_CANCEL;
Context context = getApplicationContext();
CharSequence contentTitle = "Neoseeker";
Intent notificationIntent = new Intent();
PendingIntent contentIntent = PendingIntent.getActivity(Neoseeker.this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(Neoseeker.NOTIFICATION_ID, notification);
}
答案 0 :(得分:3)
步骤1:永远不要致电getApplicationContext()
。 Neoseeker.this
显然是Context
- 使用它。
第2步:notificationIntent
为空Intent
。这不会打开任何活动。您需要创建一个可以启动活动的Intent
,就像您在Intent
中使用的startActivity()
一样。
以下是我的一本书中的sample project,其中显示了通知的使用。