【问题标题】:Android statusbar notification launches new app though it running already. How to synchronize launching app from app icon and staus bar notification?Android 状态栏通知会启动新应用程序,尽管它已经在运行。如何从应用程序图标和状态栏通知同步启动应用程序?
【发布时间】:2011-10-20 04:28:42
【问题描述】:
我已经在服务中实现了通知。通知工作正常。但是在应用程序已经运行并且我点击 android 状态栏通知的情况下,它会启动我的应用程序的新副本。这显然是错误的。如果用户单击状态栏通知,应该是如果应用程序尚未运行则应该启动应用程序,否则它应该打开其他活动(在我的情况下是消息活动)。我尝试了在此处发布的类似问题中提供的许多建议,但在我的情况下我没有得到解决方案。
【问题讨论】:
标签:
android
service
notifications
【解决方案2】:
在这里,我设法摆脱了这个问题。首先,我在条目活动或扩展应用程序的类中定义了布尔变量。我将属性设置为该变量,当应用程序运行时为真,当应用程序退出时为假。然后我检查要打开哪个活动的布尔变量。就我而言,这解决了问题。可能对您的情况也有帮助。bt 情况可能会有所不同。祝你好运
【解决方案3】:
使用布尔值不是解决此问题的好方法。有关更多信息,请查看应用程序的生命周期。相反,您应该在目标活动中将您的 launchMode 更改为 singleTask 或 singleInstance,并从该活动的 onNewIntent() 方法接收您的意图。
但请注意,如果您调用 super.onNewIntent(intent);然后将创建该活动的第二个实例。所以不要调用它,并按照你的意图做任何你想做的事情。