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

316 天前
 NokiaForever
谷歌的 FCM 推送和华为推送、小米推送等不一样,是设备和谷歌 fcm 服务器 mtalk.google.com 维持一个长链接,服务端发消息给设备,设备广播拉起对应应用,然后由应用接收消息,故应用需要有自启动权限,后台不能使用“限制”模式,而是要使用“优化”,使应用进缓存。安卓的 fcm 是需要 app 在后台的没想到吧.完全关闭的情况下是收不到消息的.国产推送是有一个统一的推送服务在后台保活。
谷歌这做法不是让应用能自启动驻留后台,耗费电量吗?苹果、小米这些推送服务是完全不让应用能够自启动(如果需要就手动开启),就防止了应用耗费额外电量。
所以在国际上 Android 不费电不废内存可能是一种误解?
15838 次点击
所在节点    Android
82 条回复
icoming
316 天前
不是广播唤醒吗?为什么限制自启?为什么需要 APP 在后台?
fuzzsh
316 天前
/t/970505
又来水帖


Android 上的 PayPal telegram whatsapp Instagram 基本是“单一”功能
而“安卓”上的支付宝 微信 微博则是“单一”系统


一个功能耗电在多
比不过
在 kernel 上跑 container 耗电
chapiom
316 天前
维持但是只维持了一个,这比每个 app 在后台各搞一个好多了吧,国产那些推送各自为政,没见到几个 app 用了。
NokiaForever
316 天前
@icoming 不限制,某些 app 就会常驻后台,限制了就没推送。
huage
316 天前
最近我们小区要成立业委会,不少业主都不积极主动去投票,不团结的思想是自上而下灌输的。
codehz
316 天前
有一个问题是隐私相关的:不唤醒就直接推送内容的模式下,推送方案提供方将会获得推送内容的全部访问权限,在一些隐私高度敏感的应用里是不切实际的。
我觉得还是果子的方案好,允许应用专门注册一个扩展,那个扩展只能用来处理推送信息,信息是单向流通,即 app 可以将解密密钥传递给扩展,扩展无法通过其他方式通知 app (然后就不可以唤醒了)
iseki
316 天前
FCM 不需要每条消息都拉起应用吧,只有携带附加数据的,需要应用自己处理 notification 的才需要拉起来,但也就是拉起来处理一下而已。
iseki
316 天前
至于从系统 UI 上干掉程序的情况,这似乎是个例外,它和 pkill 掉应用的进程是不一样的
iseki
316 天前
@codehz 稍微搜了一下,苹果这似乎是把这个 "extension" 放进一个独立 bundle 里去了,不过我猜为了保证运行时的隔离应该还是独立的进程吧,这样是不是成本也不低?
finab
316 天前
@iseki
我估计成本最多就是某个或某几个系统进程上一条最高 30 秒运行时间的 Task 。
否则哐哐哐收几百上千条推时进程开销也太大了,没必要
mxalbert1996
316 天前
你肯定没开发过接入 FCM 的应用吧。
https://firebase.google.com/docs/cloud-messaging/concept-options#notifications_and_data_messages
FCM 支持两种类型的消息,其中 Notification message 是如果应用不在前台的话是直接由系统处理,系统会直接显示通知,不需要应用启动。文档里说的是 in the background ,但事实上应用被关闭/杀死时也一样,你只要试一试就知道了。
你说的那种是需要应用自己处理的 Data message 。
wang93wei
316 天前
在说什么?你看过 FCM 的开发文档没?
lns103
316 天前
国际上的大部分安卓 app 不会有后台运行,强制保活的骚操作,很多通知是不需要应用处理的,直接 fcm 广播过去发出来,只有例如带通知栏回复功能的通知,才需要应用本地处理,国内定制 ROM 为了控制后台,直接进行了强制停止,导致广播发不过去,fcmfix 这样的模块能解决
jacksonj297
316 天前
@fuzzsh Instagram 也支持短视频购物带货私信 IM 功能发朋友圈微信状态 story24 小时消失。telegram WhatsApp 支持支付。
iseki
316 天前
@mxalbert1996 从 Sys UI 里强杀应该是收不到的,这个应该是 by design ,就是不清楚具体怎么实现的
iseki
316 天前
@finab 也不好说,毕竟天天用的 ls 命令它也启个进程,只要够轻,那就不叫事,而且平均下几秒钟一条推都了不得了似乎。蹲一个 iOS 聚聚(
wangxiaodong
316 天前
@NokiaForever app 常驻后台天经地义吧,既然安装了就属于产生了互信,你所谓的性能功耗是满足业务需求之外的特殊情况;近几年 google 把 android 的权限收缩的太过分了,严重阻碍技术创新!
SenLief
316 天前
@chapiom 除了微信,大多数 app 现在都集成推送的,尤其是华为 push
SenLief
316 天前
安卓 14 有新的墓碑机制吧,不必在意那点内存占用了,都 16g 起步,我现在都是全后台,能后台的坚决不杀死。我现在手机上推送就是 fcm 推送 tg ,y2b ,outlook ,其余的由华为 push ,剩下的 oppo push ,基本能覆盖推送,覆盖不到的就后台不管。
SenLief
316 天前
@mxalbert1996 貌似实际上没有系统通知,都会拉起 app 来通知。

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

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

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

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

© 2021 V2EX