android - 保持应用程序处于运行状态以接收来自 Urban Airship 的推送

标签 android push-notification state urbanairship.com

我的应用使用 urban Airship 作为推送通知。

当用户“强制”关闭 应用程序时(通过在多任务窗口或设置中将其滑开),问题就开始了。当推送到达时,它到达 Urban Airship 的接收器,他们正在广播一个 Intent 供我的应用程序使用。因此,如果应用程序被强制关闭,那么我的接收器将不会被激活,我将无法接收广播。

我知道 Intent.FLAG_INCLUDE_STOPPED_PACKAGES 但我不能使用它,因为 urban 正在进行广播并且它在一个 jar 文件中。

解决方法是让我的应用程序始终处于运行状态,即使用户关闭它也是如此。 我怎样才能做到这一点?我看到 What's app 正在这样做。 还有其他解决方案吗?

附言 我知道 android 的构建方式是当用户强制关闭应用程序时,他“希望”它停用它的接收器,但推送通知不一样,推送通知仍会通过。我只希望我的应用程序“运行”以便我可以接收推送。 谢谢!

最佳答案

服务在应用程序关闭时直播,尝试通过仅在服务内调用 service.stopSelf() 时停止的服务接收您的广播

关于android - 保持应用程序处于运行状态以接收来自 Urban Airship 的推送,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16935528/

相关文章:

android - 需要阻止 Android 在失败的 gradle 任务上运行

java - 是否可以在 Switch 中使用已有的字符串?

android - 将通知从基于 Web 的应用程序推送到 Android

iphone - 通知设置中缺少“提醒样式”选项

java.lang.NoSuchMethodError : No static method clearInstance()

Android:WebView 无法显示 '%' 百分号

ios - 在新的 iOS 应用程序版本上处理推送通知

javascript - 如何使用 Formik 动态生成列表(例如通过 AJAX 或 setState)?

c# - 在 global.asax(C#、.Net)之外捕获 session 状态事件?

haskell - 你如何在 Haskell 中定义状态?