android – 我为什么要将urbanairship服务作为一个单独的进程启动?

android – 我为什么要将urbanairship服务作为一个单独的进程启动?,第1张

概述我使用UrbanAirship(UA)进行推送通知. UA推送服务在Manifest文件中配置如下: <service android:name="com.urbanairship.push.PushService" android:process=":com.urbanairship.push.process" /> android:process是可选的,但是recommended 我使用UrbanAirship(UA)进行推送通知.

UA推送服务在Manifest文件中配置如下:

<service androID:name="com.urbanairship.push.PushService"     androID:process=":com.urbanairship.push.process" />

androID:process是可选的,但是recommended in their documentation.

当我使用单个进程并关闭所有活动时,我可以看到我的单个进程占用了大约3mb的内存

当我使用两个进程(一个用于app,一个用于服务)并关闭我的所有活动时,我可以看到两个进程都处于活动状态,每个进程占用大约3mb的内存.

所以我的问题是:重点是什么?

解决方法 我的猜测是UA建议这样做,以便他们自己的代码将面临更少的争用/破坏.例如,如果您的应用程序崩溃但UA代码在单独的进程中运行,那么他们可能会继续运行而不会中断(并避免在托管它们的进程突然被杀死时可能发生的数据损坏).

有关另一条线索,请参阅此问题:Starting an Android notification at startup.正如您所看到的,一些开发人员报告说,根据应用程序组件的生命周期,有时会无法显示常规AndroID通知.通过将UA PushService放入单独的进程,这可以缓解此问题.我要测试一下,因为重启后我的UA通知有时不会持续存在.

顺便说一句,似乎最新的UA文档不再建议使用自己的单独进程声明服务.

总结

以上是内存溢出为你收集整理的android – 我为什么要将urbanairship服务作为一个单独的进程启动?全部内容,希望文章能够帮你解决android – 我为什么要将urbanairship服务作为一个单独的进程启动?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://www.outofmemory.cn/web/1124370.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-30
下一篇 2022-05-30

发表评论

登录后才能评论

评论列表(0条)

保存