KevinZの破站


废话加载中...

记录下Android源码修改遇到的问题和修改方法

目录

我在dotos编译完成刷入后发现时间不对,得手动修改,这我能忍??

方法一:修改源码

如果你想让你在这个源码下的编译都使用国内服务器,就用下面这个方法。

1.开机无法对时

修改如下:

位置:/frameworks/base/core/res/res/values/config.xml

原来的样子:

<!-- Remote server that can provide NTP responses. -->
    <string translatable="false" name="config_ntpServer">time.android.com</string>

很明显,android.com在国内是无法访问的,所以对时肯定不成功,讲它更换成国内可用的源即可

修改它:

<!-- Remote server that can provide NTP responses. -->
    <string translatable="false" name="config_ntpServer">pool.ntp.org</string>
<!-- pool.ntp.org 全球可用个人比较推荐  -->

2.网络不可用

安卓手机网络状态有如下几种状态: 1、 根本就没有返回,这种情况代表当前没有Internet访问;

2、返回状态码204,这种情况代表具备完整的Internet访问(特定的服务器专门返回204的状态码);

3、 除204以外的其他大于200而小于400的状态码,这种状态码一般代表需要进行Web登录的网络连接,比如机场、商场提供的需要短信登录的网络。这种情况下Android会构造一个可能需要登录的状态栏通知以通知用户可能需要进行登录。

安卓类原生ROM刷机包默认的204服务器是由谷歌提供,由于谷歌在我国大陆区不可访问。所以,自己动手修改源码!

(部分内容摘自极客盟@番茄小子原文章)

位置:packages/modules/NetworkStack/res/config.xml

原来的样子:

<!-- HTTP URL for network validation, to use for detecting captive portals. -->
<string name="default_captive_portal_http_url" translatable="false">http://connectivitycheck.gstatic.com/generate_204</string>
<!-- HTTPS URL for network validation, to use for confirming internet connectivity. -->
<string name="default_captive_portal_https_url" translatable="false">https://www.google.com/generate_204</string>
<!-- List of fallback URLs to use for detecting captive portals. -->
<string-array name="default_captive_portal_fallback_urls" translatable="false">
    <item>http://www.google.com/gen_204</item>
    <item>http://play.googleapis.com/generate_204</item>
</string-array>

修改它

<!-- HTTP URL for network validation, to use for detecting captive portals. -->
<string name="default_captive_portal_http_url" translatable="false">http://connect.rom.miui.com/generate_204</string>
<!-- HTTPS URL for network validation, to use for confirming internet connectivity. -->
<string name="default_captive_portal_https_url" translatable="false">https://connect.rom.miui.com/generate_204</string>
<!-- List of fallback URLs to use for detecting captive portals. -->
<string-array name="default_captive_portal_fallback_urls" translatable="false">
    <item>http://connect.rom.miui.com/generate_204</item>
    <item>http://connect.rom.miui.com/generate_204</item>
</string-array>

2.方法二:修改device

如果你想让你想单独在某个机型上使用国内服务器,就用下面这个方法。

位置: device/[制造商]/[机型代号]/overlay/frameworks/base/core/res/res/values/config.xml

在最后一个</resources>前,添加如下源码

    <string translatable="false" name="config_ntpServer">pool.ntp.org</string>
    <string name="default_captive_portal_http_url" translatable="false">http://connect.rom.miui.com/generate_204</string>
    <string name="default_captive_portal_https_url" translatable="false">https://connect.rom.miui.com/generate_204</string>

完事

本文章于2023/01/27修改

打赏一个呗

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦