1
zts1993 2018-01-24 17:06:18 +08:00
别折腾了,微信的 GCM 只是为了唤醒
没网络是不是电池优化了? |
3
GooMS 2018-01-24 17:48:46 +08:00 via Android
微信 Gcm 可以无视
|
4
iVeego 2018-01-24 18:37:26 +08:00 via Android
微信的 gcm 是假的,gcm 唤起 push, push 拉取消息。叶子为微信进行了特殊优化使得 gcm 可用了。断网是因为 doze,添加电池白名单试试。
|
5
honeycomb 2018-01-24 18:42:39 +08:00 via Android
微信没有用高优先级 fcm 信息,因此默认的正常模式(将微信 force stop )时,不会拉起微信。这个时候微信的所有进程都被杀掉了,自然没有机会运行展示 toast 的逻辑。
浅睡只是把微信置入 app standby 而已,app standby 时应用自然不能联网,但还是可以做很多事的(类似于 light doze )。 从 Android7 开始,系统的 light doze 机制使得所有应用在默认情况下,都没有后台网络(无需人为设定 app standby )。 |
6
codingadog 2018-01-24 18:49:36 +08:00
看着和 iOS 上的微信动作很相似,都是先收到推送,然后进去才正式收消息
|
7
honeycomb 2018-01-24 18:54:44 +08:00 via Android
在 Android 7+,当然是要那种在编译器间开启了 doze flag 的,不使用此类自动休眠软件,微信也会在熄屏一段时间后再打开回来时,通知不能连网。
Android 7 是 2016 年秋天正式发布的系统,至今已经快有一年半,如果算上首个公开预览版本,那就是已经面世 20 个月了,腾讯看上去没有在这方面做任何适配。 |
8
ae 2018-02-23 09:31:14 +08:00
微信的半残 fcm 并不能直接使用,
想用的话需要装 xposed,绿守里打开 xp 模式 gcm 功能, 这个就算把微信加入电池优化白名单,并且有你说的微信断网情况,但仍能完美收到微信 fcm 推送 (根据 gcm 心跳不同时间会有些许延迟) |
9
trys1 2018-02-27 11:46:22 +08:00
跟楼主一毛一样的问题,请问楼主现在解决了吗?
|
10
trys1 2018-02-27 16:02:40 +08:00
同问,有没有什么方法,既可以休眠微信,又可以及时收到消息?
|