Releases: anysoft/fcmfix
Auto Release 20240509_13f13a7
40-20240509_13f13a7 update gitflow
Auto Release 20240509_
40-20240509_ update gitflow
Auto Release 20231206-81ae050
update gitflow
v7
v0.5.3-miui13
ChangeLog
同步kooritea的最新版0.5.3
具体参考历史版本 changelog 和 kooritea changelog
v0.4.4-fcmfix-whitelist
v0.4.8
v0.4.8-miui13
v0.5.0-miui13
v0.5.2-miui13
v0.5.2-miui13
ChangeLog
- 同步kooritea的最新版0.5.2
具体参考历史版本 changelog 和 kooriteachangelog
v0.5.0-miui13
v0.4.8-miui13
CHANGELOGS
- 基于 kooritea/fcmfix
V0.4.8
- 新增对
电量和性能
的 hook(去除对gms限制) - 针对MIUI13 上再次优化
电量和性能
。hook com.miui.powerkeeper.provider.SimpleSettings.Misc.getBoolean(),当获取 gms_control 默认值时返回true。 - hook com.miui.powerkeeper.utils.GmsObserver的构造方法:defaultState=!Build.IS_INTERNATIONAL_BUILD=false
MIUI12.5.14 运行正常,MIUI13未测试
kooritea/fcmfix 已经是非常完善的了。只是我这边系统偶尔hook IS_INTERNATIONAL_BUILD失败,导致偶尔无法正常使用,所以继续针对电量和性能
hook。
hook点参考
欢迎大家交流指正!
- com.miui.powerkeeper.utils.GmsObserver
- GmsObserver
- 构造方法执行后修改:defaultState=false=!Build.IS_INTERNATIONAL_BUILD
- updateGmsState
- updateGmsNetWork
- stopGetFeedback
- disableGms
- isGmsAppInstalled
- isGmsCoreAppEnabled
- GmsObserver
- com.miui.powerkeeper.utils.GmsCoreUtils;
- killGmsCoreProcess
- com.miui.powerkeeper.millet.MilletPolicy
- mSystemBlackList
- mDataWhiteList
- whiteApps
- musicApp
- pkgWhiteList
- mUseDataWhiteList
- pkgBlackList
- mUseSystemBlackList
- com.miui.powerkeeper.statemachine.ExtremePowerController
- disableGmsCoreIfNecessary
- disableNotificationOnLockScreen
- com.miui.powerkeeper.utils.NetdExecutor
- initGmsChain
- setGmsChainState
- setGmsDnsBlockerState
- com.miui.powerkeeper.provider.SimpleSettings.Misc
- getBoolean
- gms_control 默认返回
true
- gms_control 默认返回
- getBoolean
更新FCM host
不清楚什么原因,之前的host失效了。更新下
FCMHostsForChina-0.3.zip 基于 magisk
app-release.apk 基于lsp/xposed
使用方式
参考:
https://github.com/anysoft/fcmfix/releases/tag/v0.4.4
https://github.com/kooritea/fcmfix
v0.4.8
changelog
- 同步 kooritea/fcmfix 更新。
- 添加常用fcm应用到
lsp
推荐名单
!!!
- kooritea伪装国际版有时候不稳定会失效,所以我这边继续对
电量和性能
中gms的限制去除。 - 测试系统 MUI12.5
v0.4.4-fcmfix-whitelist
参考
@kooritea/fcmfix
@MinaMichita/miuifcmfix
注意
xp模块对系统的修改以及对电量和性能的修改(白名单和gms全量运行)必然导致某些情况下耗电更多。不喜可以关闭本插件!!!!
功能
修复MIUI的电量和性能(com.miui.powerkeeper)针对 fcm 的反向优化,和支持修改电量和性能的白名单功能.
- 去除电量和性能 对com.google.android.gms的黑名单
- 默认白名单维护。从白名单删除 "com.tencent.mobileqq"
- 允许 锁屏通知 (hook disableNotificationOnLockScreen,并禁用该方法)
- 禁止 强杀、禁用 GMS 服务
- 禁止 对 GMS 添加DNS和IPTABLE规则
hook 模块
-
com.miui.powerkeeper.utils.GmsObserver
- updateGmsState
- updateGmsNetWork
- stopGetFeedback
- disableGms
-
com.miui.powerkeeper.utils.GmsCoreUtils;
- killGmsCoreProcess
-
com.miui.powerkeeper.millet.MilletPolicy
- mSystemBlackList
- mDataWhiteList
- whiteApps
- musicApp
- pkgWhiteList
- mUseDataWhiteList
- pkgBlackList
- mUseSystemBlackList
-
com.miui.powerkeeper.statemachine.ExtremePowerController
- disableGmsCoreIfNecessary
- disableNotificationOnLockScreen
-
com.miui.powerkeeper.utils.NetdExecutor
- initGmsChain
- setGmsChainState
- setGmsDnsBlockerState
LSPOSED
- 必须把
电量和性能
添加到作用域 - 必须把
安卓系统
添加到作用域 - 必须把
Google play服务
添加到作用域 - 必须把接收推送的应用添加到作用域(telegramx,teams)
测试环境
- Xiaomi 10S
- MIUI12.5
- fcmfix-whitelist(本模块)
- FCM Hosts Magisk模块
- Telegram X 、Teams (Google Play版)
总结
目前测试fcm推送
正常,锁屏
后teams
和telegramx
都能正常收到消息和电话/视频
遇到问题
-
通知不弹出,不提示
- Telegram X 、Teams 在miui必须把
权限管理
中显示悬浮窗
和后台弹出界面
、锁屏显示
打开 - 必须把
通知管理
中通知过滤规则
全部设为重要,其他单项规则按需求配置
- Telegram X 、Teams 在miui必须把
-
teams能收到消息推送,但是无法接收通话/视频。一般是因为teams消息的ack落后了。
- 我这边体现为,收到的最新推送比发送的消息始终落后两条
- 我的处理方案是 清空Google play服务的全部数据,然后退出teams账号后重新登录账号(可以在设置--手机账户 中删除 microsoft账号),再重启手机。 只要ack恢复正常就能正常收到通话了。
-
fcm中显示no response
- 是由于应用未响应fcm推送,虽然此时应用是后台存在进程,但是不处理推送消息,一般是因为应用被优化了,可以尝试后台无限制看看,或者灭霸调试要保活什么服务
-
fcm中显示failed to broadcast
- 出现这个一个是因为应用进程被杀了,可以灭霸情景模式保活或者系统后台无限制,优化要不断地调试才能稳定
-
fcm中显示404 to broadcast
- 这个官方说是由于token不一致导致的,这个我测试很奇怪,打开应用推送成功,应用切换到后台推送就是404,最后是应用退出登录,清理GMS和应用数据后恢复正常。