MTK-GMS版本国内WIFI受限问题解决
文章目录
- 问题
- 参考资料
- 解决方案
- 方案一 修改配置
- 坑点
- 方案二 直接修改属性
问题
最近负责ROOM 产品,出现WIFI受限显示,但是网络是通畅的。
- GMS 版本,在国外或者国内翻墙网络不会出现WIFI受限显示问题,但是国内连接WIFI 会出现WIFI受限的显示
- 对破解版GMS版本,预置了GMS包和服务的产品,也会出现。
参考资料
Android 系统连接WIFI显示网络连接受限分析处理
解决Android/安卓原生ROM出现网络连接受限(Limited connection),网络无法链接的问题
android captive portal
解决 Pixel 及 aosp rom 国内 WiFi 网络连接受限
解决方案
问题核心本质:GMS版本,谷歌会检测当前设备是在哪个地方访问的,对于受到制裁的区域,会有一些管控,表示非法设备。 具体什么管控就看谷歌了。如果回调访问不到谷歌的一些地址,那么就会有一些bug 了。
方案一 修改配置
对 “default captive portal fallback urls” 配置进行更改,这里需要满足国内和国外同时访问,这里可以找半导体厂商要一些 访问链接。
或者 参考 其它家手机厂商 的地址。
坑点
- 对于GMS版本,谷歌oem 固件会覆盖,导致无法修改成功,所以这个方案不一定成功。
- 如果需要满足国内和国外的,那么如果配置修改成功,无法满足国内国外,那么就需要硬编码来进行修改,可以借鉴参考资料
方案二 直接修改属性
调试方法:执行以下两条命令就解决了 WIFI受限问题
adb shell settings delete global captive_portal_modeadb shell settings put global captive_portal_mode 0
所示 实际方案二 默认属性值即可。 参考之前自己好多文章,在 DatabaseHelper.java 类中默认属性值即可
路径:\vendor\mediatek\proprietary\packages\apps\SettingsProvider\src\com\android\providers\settings\DatabaseHelper.java
参考之前文章:MTK 打开开发者模式和USB调试模式