为何谷歌不学中国厂商所统一推送服务?

317 天前
 NokiaForever
谷歌的 FCM 推送和华为推送、小米推送等不一样,是设备和谷歌 fcm 服务器 mtalk.google.com 维持一个长链接,服务端发消息给设备,设备广播拉起对应应用,然后由应用接收消息,故应用需要有自启动权限,后台不能使用“限制”模式,而是要使用“优化”,使应用进缓存。安卓的 fcm 是需要 app 在后台的没想到吧.完全关闭的情况下是收不到消息的.国产推送是有一个统一的推送服务在后台保活。
谷歌这做法不是让应用能自启动驻留后台,耗费电量吗?苹果、小米这些推送服务是完全不让应用能够自启动(如果需要就手动开启),就防止了应用耗费额外电量。
所以在国际上 Android 不费电不废内存可能是一种误解?
15855 次点击
所在节点    Android
82 条回复
wangxiaodong
314 天前
@ShadowPower 我的诉求是:别把 FCM 或国内手机商渠道作为 android 系统独有的通知渠道,即使是变相的缩权方式我也不认同。

“自启动和后台保持”是可以自建渠道的基本权利,如果只有 FCM 被系统列为白名单,那 android 危矣,就是第二个微信小程序。
ShadowPower
314 天前
@wangxiaodong 我支持你的诉求。但是你的想法其实在 Android 上还比较麻烦:
如果用户只是单纯地安装了应用而不做任何配置,在 Pixel 上,电池优化和自适应电池的设计对这种自建推送渠道并不友好,因为会被识别为滥用,然后开始加大限制。
这已经是 AOSP 的“默认行为”了。FCM 实际上有特权,包括 APP 里的 FCM SDK 里接收推送消息的 Service 也有电池优化的特权。

要想实现你的各种诉求,Google 也得改。但显然不会让 Android 回到那个 APP 一天 24 小时在后台偷偷做事情的时代。
现实总是会充满妥协的,完全理想的世界并不存在。

无论如何,今天的各种海外安卓 APP 几乎只接入 FCM 推送。
减少电池优化功能(无论是温和的还是激进的)对推送的影响,这一点已经很现实,很合理了。

至于你的诉求,如果谷歌不想让“电池优化”功能形同虚设,只能针对这种需求专门设计一套机制。就类似无障碍服务一样,单独授权,给一些特别的权限,也给一些防止滥用该功能的限制。


我追求的一直都很简单,用户的权力应该高于 APP 的权力。想用的功能都应该正常使用,不想用的功能都可以不允许 APP 去做。
如果 APP 在后台做我不知道的事情,而我不需要它,我应该能彻底关闭它。
但我还需要收取这个 APP 的推送通知,目前 iOS 和国产 ROM 的推送都可以做到这一点,可惜 FCM 做不到。

只要能做到,就可以了。

我追求的不是苹果那种“苹果觉得你不需要”,然后全都不让做,用户没有选择权。
而是用户可以根据自己的意愿,来掌控自己的设备而已。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/1005622

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX