0

我的应用中有一条通知,其中设置了待处理的意图。当我使用我的应用程序时,我会进行多项活动。登录 -> 主屏幕 -> 关于等。我想将我的应用程序恢复到前景,但我不知道在 Intent 构造函数中设置它的当前活动是哪个类。我想从通知中恢复它。如果打开并再次打开,则成为一种返回应用程序的方法,因为通知来自服务。

当用户将其带回时,我想带回位于顶部的活动。换句话说,我想模拟行为->返回设备的主屏幕[此时应用程序正在运行但处于后台],如果单击应用程序图标..应用程序恢复上一个活动/将其带到我所在的前面当单击主页按钮时,也可以从通知中执行此操作

有没有办法做到这一点?

谢谢

4

1 回答 1

0
            NotificationManager manager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE);
            Notification notification = new Notification(R.drawable.icon,"Details", System.currentTimeMillis());
            RemoteViews remoteView = new RemoteViews(getPackageName(),R.layout.custom_notification);
            remoteView.setImageViewResource(R.id.icon, R.drawable.icon);
            remoteView.setTextViewText(R.id.Mesg, "Status : "+ details);
            notification.contentView = remoteView;
            Intent notificationIntent = new Intent(context,Form.class).putExtra("layout", "99");
            PendingIntent contentIntent = PendingIntent.getActivity(getApplicationContext(), 0, notificationIntent,Notification.FLAG_AUTO_CANCEL);
            notification.contentIntent = contentIntent;
            notification.flags = Notification.FLAG_AUTO_CANCEL+ Notification.FLAG_ONLY_ALERT_ONCE;
            manager.notify(45, notification);

并在我创建我的应用程序时使用

 Intent i = getIntent();
    k = Integer.parseInt(i.getStringExtra("layout"));
    Log.i(TAG, ">>>>>>>>>>" + k);
    if (k == 99) {
        finish();
    }

这将检查您的活动是否仍然存在。如果活动被杀死或关闭,它将带您进入堆栈顶部的活动。如果应用程序完全关闭,它不会做任何事情

于 2013-02-15T06:50:01.037 回答