我知道标题不是解释性的,但让我向你解释一下。我正在制作一个Shoutcast流媒体广播项目。当应用程序开始流式传输时,通知栏上会显示一个通知,其中包含无线电名称和当前歌曲ID。到目前为止,一切看起来都很正常,但是当用户触摸通知时(流继续),它再次打开应用程序,另一个流开始播放。我希望我已经很好地解释了这个问题,这里是代码:
编辑:
Hey again, I have just figured out how to make it that way and here is the sample code.
String ns = Context.NOTIFICATION_SERVICE;
mNotificationManager = (NotificationManager) getSystemService(ns);
icon = R.drawable.rbnot;
CharSequence tickerText = "Radyo Bilkent";
long when = System.currentTimeMillis();
notification = new Notification(icon, tickerText, when);
notification.flags = Notification.FLAG_ONGOING_EVENT | Notification.FLAG_NO_CLEAR;
Intent notificationIntent = new Intent(this, myMain.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
Context context = getApplicationContext();
CharSequence contentTitle = "Radyo Bilkent";
CharSequence contentText = currPlayView.getText();
PendingIntent contentIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, contentIntent);
mNotificationManager.notify(HELLO_ID, notification);
答案 0 :(得分:0)
查看代码。这对我有帮助。
NotificationManager notificationManager = (NotificationManager) context
.getSystemService(Context.NOTIFICATION_SERVICE);
Notification notification = new Notification(icon, message, when);
Intent notificationIntent = new Intent(context, HomeActivity.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP
| Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context, 0,
notificationIntent, 0);
notification.setLatestEventInfo(context, title, message, intent);
notification.flags |= Notification.FLAG_AUTO_CANCEL;
notificationManager.notify(0, notification);