微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

Android:如何从通知中恢复应用程序?

我正在尝试将我的通知编程为RESUME我的应用程序,而不是简单地启动我的应用程序的新实例…我基本上是在寻找它做同样的事情,因为长按主页按钮并恢复应用程序从那里.

这是我目前正在做的事情:

void notifyme(String string){

    String ns = Context.NOTIFICATION_SERVICE;
    notificationmanager mnotificationmanager = (notificationmanager)
                                                getSystemService(ns);

    int icon = R.drawable.notification_icon;        // icon from resources
    CharSequence tickerText = string + " Program Running...";     // ticker-text
    long when = System.currentTimeMillis();         // notification time
    Context context = getApplicationContext();      // application Context
    CharSequence contentTitle = *********;  // expanded message title
    CharSequence contentText = string + " Program Running...";//expanded msg text

    Intent notificationIntent = new Intent(this, Main.class);
    PendingIntent contentIntent = PendingIntent.getActivity(
                                                this, 0, notificationIntent, 0);

    // the next two lines initialize the Notification, using the configurations
    // above
    Notification notification = new Notification(icon, tickerText, when);
    notification.setLatestEventInfo(context, contentTitle, contentText,
                                                                contentIntent);
    final int HELLO_ID = 1;
    mnotificationmanager.notify(HELLO_ID, notification);
}

我猜测新的Intent系列是问题所在……任何帮助都将不胜感激!

解决方法:

你需要设置你的旗帜

 notification.flags = Notification.FLAG_ONGOING_EVENT | Notification.FLAG_NO_CLEAR;   
 notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

此外,如果您从未希望存在重复活动,请在清单中为其指定此属性

android:launchMode="singleTask"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐