2

我有一个在后台运行的服务,如果有新数据,我想通知用户,我使用了一个通知管理器,并且通知出现了,但是当点击它时它什么也没做(它应该显示我是 android 新手的一项活动,这是我的代码

NotificationManager notificationmanager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
Notification notification = newNotification(R.drawable.shoppingcarticon, "Nouvelle notification de ShopAlert", System.currentTimeMillis());
notification.defaults |= Notification.DEFAULT_VIBRATE;
notification.flags |= Notification.FLAG_AUTO_CANCEL;

Intent intent = new Intent(this,GooglemapActivity.class);
PendingIntent activity = PendingIntent.getService(this, 0, intent, 0);

notification.setLatestEventInfo(this, "This is the title", "This is the text", activity);
notification.number += 1;
notificationmanager.notify(0, notification);

您的帮助将不胜感激。

4

2 回答 2

5

您可以使用此代码。将 Main.Class 更改为您的活动类,并根据需要更改标题和内容文本。

String ns = Context.NOTIFICATION_SERVICE;
NotificationManager mNotificationManager = (NotificationManager) getSystemService(ns);


int icon = R.drawable.ic_action_search;
CharSequence tickerText = "Pet Parrot";
long when = System.currentTimeMillis();

Notification notification = new Notification(icon, tickerText, when);
notification.flags |= Notification.FLAG_AUTO_CANCEL;
Context context = getApplicationContext();
CharSequence contentTitle = "Hungry!";
CharSequence contentText = "your parrot food meter is: ";
Intent notificationIntent = new Intent(context, Main.class);
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);

notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);

mNotificationManager.notify(1, notification); // Log.d("test", "Saving Data to File from Service.");
于 2012-07-22T10:28:49.230 回答
3

以下行:

PendingIntent activity = PendingIntent.getService(this, 0, intent, 0);

应该是这样的:

PendingIntent activity = PendingIntent.getActivity(this, 0, intent, 0);

因为你试图开始一个Activity,而不是一个Service。希望这可以帮助。

于 2012-07-22T10:20:41.047 回答