【发布时间】:2016-12-23 12:21:20
【问题描述】:
我有一个可以通过 Google Cloud Messaging 接收消息的应用。我需要在收到云消息时自动启动一个活动,必要时唤醒设备。
虽然它可能看起来是一个糟糕的 UI 设计,强制向用户展示某些东西,但这个应用程序对用户的工作至关重要,因此当云消息到了。
我尝试在收到云消息时拨打startActivity(),并且当应用程序在后台时它可以工作。但是,一旦从最近的应用列表中删除该应用,新的 Activity 就不会启动。
有什么方法可以实现我想要做的吗?
【问题讨论】:
-
您可以只显示一条可以清楚地显示给用户的 toast 消息。
-
当应用程序在后台运行时,toast 无法正常工作,我相信您可以使用 crouton 来做到这一点。
-
通常你会显示一个提醒通知,它会启动一个活动。这样它也会显示在锁定屏幕上...
-
首先,如果需要唤醒设备,可以设置priority to HIGH。因为它允许 GCM 服务唤醒睡眠设备并打开与服务器的网络连接。即使您在应用列表中删除了活动,也可以启动活动,这个 SO 问题 24313539 和 22252065 可能会对您有所帮助
-
当应用程序在后台时,您的意图服务不会在通知后触发。通知将到达通知系统尝试。因此,您的活动没有开始。您可以看到这个答案。这是针对 fcm 但 gcm 和 fcm 相同的东西stackoverflow.com/a/39161526/3073945 但你解决了这个问题吗?我也在搜索这个结果。
标签: android google-cloud-messaging