恢复原始状态的申请

时间:2011-11-22 22:27:41

标签: android

所以这是设置...我有一个应用程序,从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);
}

这是我应该为我想要做的事情所要求的服务,还是我需要完全不同的东西?

1 个答案:

答案 0 :(得分:0)

首先,如果我的问题是对的 -

  

“我正在寻找一种方法让应用程序进入通知   面板,按下时,恢复完全状态“

如果这是你想要实现的目标,为此你正在通知活动并恢复“NewMPEStreamImpl.class”我想这可能不是一个更好的主意。

让我说清楚,

  

状态栏通知应该用于任何情况a   后台服务需要提醒用户有关该事件的信息   需要回复。

请阅读Dev Guide

如果您希望在退出应用程序之前保存流位置并以相同位置继续,则为什么不使用共享首选项进行保存。您可能也有兴趣查看Activity Lifecycle中的OnPause和OnResume状态。