gpt4 book ai didi

android - 如何通过单击通知关闭我的应用程序的任何 Activity ?

转载 作者:太空狗 更新时间:2023-10-29 16:19:18 26 4
gpt4 key购买 nike

当我点击通知时应用以下内容:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);

在应用程序的所有“startActivity”中,我应用了下一个标志:

intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_CLEAR_TOP);

startActivity 我的通知执行以下操作:调用 Activity “Splash”并称为“Main”。

Casulidad 如果我在“主要”脉冲通知中,关闭电流(正常工作)。但是,如果我在 Activity “新闻”中并发送通知,我将打开 2 个 Activity ,新的“主要”和以前的“新闻”。

如何通过点击通知来关闭我的应用程序的任何 Activity ?

最佳答案

您可以在通知中设置一个 PendingIntent,它将被 broadcastReceiver 中的 Activity 捕获。然后在activity的broadcastReceiver中,调用finish();这应该会关闭您的 Activity 。

即把这个放在你的 Activity 中

BroadcastReceiver mReceiver = new BroadcastReceiver() {

@Override
public void onReceive(Context context, Intent intent) {
finish();
}

};

这在你的 onCreate()

IntentFilter filter = new IntentFilter("android.intent.CLOSE_ACTIVITY");
registerReceiver(mReceiver, filter);

然后您的通知中的 PendingIntent 应该具有 "android.intent.CLOSE_ACTIVITY" 的操作,并且为了安全起见您的 Activity 包的包。

这是由

Intent intent = new Intent("android.intent.CLOSE_ACTIVITY");
PendingIntent pIntent = PendingIntent.getBroadcast(context, 0 , intent, 0);

然后在使用 Notification.Builder 构建通知时使用 setContentIntent(pIntent) 将其添加到您的通知中。

关于android - 如何通过单击通知关闭我的应用程序的任何 Activity ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19243137/

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