国内安卓推送使用最多的就是华为和小米的 push 了,安装上大同小异,因为我有华为账号,所以安装 hms 推送以及 fcm 推送国际 app。
HMSPush#
华为推送(hmspush)应该是目前常用 app 都接入的一个推送,当然了除了微信这个毒瘤。
准备工作#
- hms core (酷安下载即可)
- hmspush (lspoxed 模块)
- 华为应用市场 app
- lsposed+magisk
- scene (可选,把 hms core 转换成系统应用)、
- libChecker app (可选,检查 app 是否适用于华为 push)
配置流程#
- 下载安装
hms core
和华为应用商店
,更新 app 最好也是在华为应用商店,有些 app 不同的渠道采用的不同的推送。 - 安装
hmspush
并在lsposed
中启用模块,并勾选推荐应用中的系统框架和 HMS Core 两个应用 - 在 LSPosed 中 HMSPush 作用域中勾选需要利用 hmspush 推送的 app,这步主要是把 app 伪装成是华为设备在使用,如果用其他的工具伪装,可以不用配置相关作用域。
- 配置好作用域后重启手机
- 重启后打开
hmspush.apk
或者在 LSPosed 中的模块打开,这时应该能看到需要推送的 app 了,但还是未注册的状态,我们需要重启一两次 app 来让其注册。 - 待注册成功后,杀死 app 后台,关掉自启动权限,即可享受推送了。可以用
qq
来推送,记得打开系统的通知,要不不会弹出通知提醒。 - (可选)用 scene 把 hmscore 转换成系统应用,可以使有些 app 点击通知不能进入 app 的 bug,如果有经验可以把 hmscore 中多余的活动禁用,不过我使用来看耗电量不多,可以忽略不记,我就没有动。
FCM 推送#
我们知道大部分的国际 app 是不支持华为推送的,不过除了 hmspush 之外,如果你能稳定连接
mtalk.google.com
那么还可以使用 fcm 来推送
FCM 推送和 HMSpush 不同,FCM 要求 app 本身就在后台才能推送,大部分的 app 因为已经在后台了,她就是自己推送了,所以说 FCM 更多的是来推送偶尔启动的 app,比如 outlook,gmail 这类的 app,虽然微信也能推送,但是不推荐,因为推送的很频繁还不如在后台让微信自己推送了。
准备工作#
- 可以使用 fcm 服务
- fcmfix(lsposed 模块,可以让 app 死掉,让 fcm 仍能推送)
- LSPosed
配置流程#
- 国内不少地方 fcm 服务是可以连接的,但是都不稳,也就造成了链接无法长链接等,推送的不及时和不推送的情况,主要可以通过 3 种方式:
- fcm 直连,广东地区能直连
- 修改 hosts 让 fcm 能连上,主要是以下几个域名,如果有 5g 的话,可以用 ipv6 链接。
- 代理以下域名
- 拨号盘输入
*#*#426#*#*
可以查看链接的情况,大部分都不是很稳定。
mtalk.google.com
alt1-mtal.google.com
alt[2-8]-mtal.google.com #alt2-alt8都可以配置
- 安装
fcmfix
,在LSPosed
中的fcmfix
模块中选择系统框架
和Google Play服务
两个作用域 - 打开
fcmfix
模块勾选支持fcm
推送的模块,上面有提醒哪些 app 支持fcm
- 打开支持
fcm
推送的 app自启动权限
,fcmfix 模块的原理类似于模拟了一个 app 的后台进程,当 fcm 推送过来的时候去拉起该 app 来推送,所以没有自启动的权限,fcmfix 拉不起来 app。 - 重启手机
fcm 推送的缺点#
我们能看到 fcm 推送要求 app 必须要在后台的,除非 app 支持 gms 推送,但是大部分的 app 都不支持。我们通过 fcmfix 模块可以实现 app 不必在后台,但是需要能自启动,fcmfix 模拟了一个 app 在后台的假象,当 fcm 推送过来的时候由 fcmfix 强拉 app 启动来推送通知,所以整个流程来看,fcm 推送不适合短时间大量的推送已经长时间很多信息,例如微信这类的 app,更适合于偶尔推送,这样的 app 不需要长时间在后台,但是又想及时的拿到通知的 app,例如邮箱这类的应用。
Enjoy!#
安装推送真的是比 ios 差的远,当然这也不是安卓的问题,主要是安卓不够强势啊。