gpt4 book ai didi

Android:如果最初的 Activity 不是从启动器启动的,则通知开始新 Activity 而不是恢复旧 Activity

转载 作者:太空宇宙 更新时间:2023-11-03 11:25:44 25 4
gpt4 key购买 nike

我花了一周的时间寻找解决方案但没有成功,所以我需要帮助。

当我的应用程序进入后台时,会出现通知并显示 Activity 状态。

如果应用程序从启动器启动(使用 action = android.intent.action.MAINcategory = android.intent.category.LAUNCHER),它会完美运行。但是如果应用程序是从 f.e. 开始的。从库中使用操作 android.intent.action.SENDandroid.intent.action.SEND_MULTIPLE 和类别 android.intent.category.DEFAULT , 然后通知开始新的 Activity 而不是恢复现有的 Activity 。

通知代码:

String ns = Context.NOTIFICATION_SERVICE;
NotificationManager notificationManager = (NotificationManager) getSystemService(ns);

int icon = R.drawable.icon;
Notification notification = new Notification(icon, null, 0);
notification.flags |= Notification.FLAG_ONGOING_EVENT|Notification.FLAG_AUTO_CANCEL|Notification.FLAG_ONLY_ALERT_ONCE;

Context context = this.getApplicationContext();
CharSequence contentTitle = "XXX";
CharSequence contentText = "XXX";

Intent notificationIntent = new Intent(context, MyClass.class);
notificationIntent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

PendingIntent activityIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
notification.setLatestEventInfo(context, contentTitle, contentText, activityIntent);

notificationManager.notify(NOTIFICATION_ID, notification);

换句话说,我有一个应用程序“我的应用程序”,其 Activity 为“我的 Activity ”。如果“我的 Activity ”在图库顶部启动并创建通知,则在按下通知后“我的应用程序”将启动,而不是使用“我的 Activity ”恢复图库。

你知道如何治愈它吗?

最佳答案

    Intent myIntent = new Intent(this, MainActivity.class);
myIntent.setFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);

PendingIntent pendingIntent = PendingIntent.getActivity(
getBaseContext(), 0, myIntent,
PendingIntent.FLAG_CANCEL_CURRENT);


NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notification.flags = notification.flags
| Notification.FLAG_ONGOING_EVENT;
notification.flags |= Notification.FLAG_NO_CLEAR;

关于Android:如果最初的 Activity 不是从启动器启动的,则通知开始新 Activity 而不是恢复旧 Activity ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9340167/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com