gpt4 book ai didi

android - 应用程序外的警报对话框(不在 Activity 中)

转载 作者:行者123 更新时间:2023-11-29 15:31:25 25 4
gpt4 key购买 nike

有没有办法在应用程序之外创建某种弹出窗口,例如警告对话框?这个问题的上下文是我需要在推送通知的情况下向用户显示一些东西。基本上,用户收到一些消息,应用程序即使当前未打开也会收到消息,并且通知会出现在用户的任务栏中。如果用户在他们的任务栏中打开通知,我希望弹出窗口完全独立于应用程序。

到目前为止,我找到的唯一解决方案是调用带有 Theme.Dialog 设置的 Activity 创建一个警报对话框。这个解决方案的问题是,如果应用程序已经打开,Activity 将被添加到 Activity Stack 中。所以我得到不一致的行为,因为如果应用程序关闭,那么弹出窗口将按我的意愿工作,并将显示在用户当前所在的任何应用程序中。但是,如果应用程序已经打开,但当前不在焦点中,然后焦点将切换到我的应用程序,然后显示对话框。

理想情况下,我希望弹出窗口独立于应用程序显示,并带有一个按钮,可以根据用户的选择将用户重定向到应用程序,或者只是关闭通知并继续他们正在做的事情。

有人有什么想法吗?

最佳答案

不,你不能。但是您可以使用 launchMode 使其成为任务中的唯一 Activity :

http://developer.android.com/guide/practices/ui_guidelines/activity_task_design.html

The "singleTask" and "singleInstance" modes also differ from each other in only one respect: A "singleTask" activity allows other activities to be part of its task. It's always at the root of its task, but other activities (necessarily "standard" and "singleTop" activities) can be launched into that task. A "singleInstance" activity, on the other hand, permits no other activities to be part of its task. It's the only activity in the task. If it starts another activity, that activity is assigned to a different task — as if FLAG_ACTIVITY_NEW_TASK was in the intent.

关于android - 应用程序外的警报对话框(不在 Activity 中),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6103577/

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