所以这是设置...我有一个应用程序,从URL流式传输直播电台。我目前拥有它,以便在用户按下后退按钮后流仍然继续播放。截至目前,返回应用程序的唯一方法是按住主页按钮,然后选择应用程序。我希望通过将其放在通知面板中来更轻松地访问应用程序。我能够实现此设置,但通知面板坚持创建新活动。这会覆盖先前的活动,从而无法停止流或应用程序(无需强制关闭)。我正在寻找一种方法将应用程序放入通知面板,当按下时,返回EXACT状态,以便可以操作流和应用程序,就好像它从未退出一样。以下是我对showNotification方法的看法......
private void showNotification() {
CharSequence text = "My Positive Edge";
Context context = getApplicationContext();
NotificationManager mNotificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationIntent = new Intent(context, NewMPEStreamImpl.class);
Notification notification = new Notification(R.drawable.klrc_icon, text, System.currentTimeMillis());
PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, "My Positive Edge",this.isPlaying, contentIntent);
notification.flags = Notification.FLAG_ONGOING_EVENT | Notification.FLAG_NO_CLEAR;
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
mNotificationManager.notify(1, notification);
}
这是我应该为我想要做的事情所要求的服务,还是我需要完全不同的东西?
答案 0 :(得分:0)
首先,如果我的问题是对的 -
“我正在寻找一种方法让应用程序进入通知 面板,按下时,恢复完全状态“
如果这是你想要实现的目标,为此你正在通知活动并恢复“NewMPEStreamImpl.class”我想这可能不是一个更好的主意。
让我说清楚,
状态栏通知应该用于任何情况a 后台服务需要提醒用户有关该事件的信息 需要回复。
请阅读Dev Guide。
如果您希望在退出应用程序之前保存流位置并以相同位置继续,则为什么不使用共享首选项进行保存。您可能也有兴趣查看Activity Lifecycle中的OnPause和OnResume状态。