Android 将信息传递给 SingleInstance Activity

标签 android android-activity single-instance bundles

我有一个 Activity ,显示列表中的许多元素,用户可以滚动浏览。此外,通过导航添加的新元素列表,用户可以单击弹出通知立即转到该元素。我只希望运行该列表的一个实例,因此我将其设为 SingleInstance。不幸的是,这意味着如果用户单击通知,它将忽略 startActivity() 而不是跳转到该元素。

我的问题是,有没有办法可以让通知启动 Activity (与要查看的项目 bundle 在一起)(如果 Activity 未启动),如果启动了,则接收该 bundle 并对其采取行动?

干杯!

最佳答案

如果您希望某个 Activity 仅运行一个实例,请在 list 中使用 android:launchMode="singleTop" 对其进行标记。这将导致 Android 创建该 Activity(如果该 Activity 不存在)并对该 Activity 调用 onNewIntent(Intent)。从调用者的角度来看,您只需像平常一样触发 Intent 即可。

关于Android 将信息传递给 SingleInstance Activity,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5823977/

相关文章:

android - 如何清除 Android 上 SingleTop SingleInstance MainActivity 上的堆栈?

Android 房间数据库迁移运行多次

android.permission.ANSWER_PHONE_CALLS 我该如何使用?用于自动应答

android - 找不到处理 Intent 的 Activity (导致 FC)

java - 当使用 Home 而不是 Back 时,onActivityResult() 永远不会被调用

android Activity 顺序,只需要当前 Activity 的一个实例,而不是清除堆栈

android - 通过 Android 推送通知启动应用程序

java - 时区未检测 DST

android - 从另一个应用程序android调用一个应用程序的 Activity

c++ - 如何在 C 或 C++ 中创建单实例应用程序