我有一个 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/