当前位置: 首页 > article >正文

Android 默认去掉URL网络校验,设置不进行网络校验

Android 系统连接WIFI显示网络连接受限分析处理_安卓13类原生系统网络受限-CSDN博客

package\modules\NetworkStack\src\com\android\networkstack\util\NetworkStackUtils.java

    public static final String CAPTIVE_PORTAL_MODE = "captive_portal_mode";
    //0 不检测
    public static final int CAPTIVE_PORTAL_MODE_IGNORE = 0;
   //1默认弹框提示,默认
    public static final int CAPTIVE_PORTAL_MODE_PROMPT = 1;
    //2检测到需要登录则自动断开此热点并不再自动连接
    public static final int CAPTIVE_PORTAL_MODE_AVOID = 2;

/vendor/mediatek/proprietary/packages/apps/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java

   //*/add wifi Not verified
            loadSetting(stmt, Settings.Global.CAPTIVE_PORTAL_MODE, Settings.Global.CAPTIVE_PORTAL_MODE_IGNORE);//0
            //*/

【以上是方法二】

国内访问或使用国外的网址失败,系统提示无法连接并访问网络,不可用或者网络受限

方案修改:一是替换了校验网络的url地址,二是去除整个校验网络过程。

【以下是方法一】

将该网址替换系统默认的校验网址

--- a/packages/modules/NetworkStack/res/values/config.xml
+++ b/packages/modules/NetworkStack/res/values/config.xml
@@ -11,7 +11,7 @@
     <integer name="default_captive_portal_dns_probe_timeout">12500</integer>

     <!-- 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>
+    <string name="default_captive_portal_http_url" translatable="false">http://xxxxx/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>

+ <string name="default_captive_portal_https_url" translatable="false">https://xxxx.xx.xx/generate_204</string>
 

注意overlay地方:

vnd\vendor\mediatek\proprietary\packages\overlay\vendor\NetworkStackResOverlay\res\values\config.xml

<?xml version="1.0" encoding="utf-8"?>
<resources>
 
-    <string-array name="config_captive_portal_https_urls" translatable="false">
-        <item>https://connectivitycheck.gstatic.com/generate_204</item>
-        <item>https://www.google.cn/generate_204</item>
-    </string-array>
+    <string-array name="config_captive_portal_https_urls" translatable="false">
+        <item>https://xxx.xxx.xxx/generate_204</item>
+        <item>https://xxxx.xxx.xxx/generate_204</item>
+    </string-array>

    
</resources>

 如果没有特殊要求的话建议将网络评估机制的结果直接手动返回成功

添加变量:b/packages/modules/NetworkStack/src/com/android/server/connectivity/NetworkMonitor.java
@@ -1468,6 +1468,7 @@ public class NetworkMonitor extends StateMachine {

     @VisibleForTesting
     protected CaptivePortalProbeResult isCaptivePortal() {
+               mIsCaptivePortalCheckEnabled = false;
         if (!mIsCaptivePortalCheckEnabled) {
             validationLog("Validation disabled.");
             return CaptivePortalProbeResult.SUCCESS;

或者:构造方法里面:

//*/

mIsCaptivePortalCheckEnabled = false;

/*/

mIsCaptivePortalCheckEnabled = getIsCaptivePortalCheckEnabled();

//*/


http://www.kler.cn/news/363027.html

相关文章:

  • Java工具类--OkHttp工具类
  • 考研篇——数据结构王道3.2.3_队列的链式实现
  • Python 应用可观测重磅上线:解决 LLM 应用落地的“最后一公里”问题
  • 使用ceph-csi把ceph-fs做为k8s的storageclass使用
  • 【信息论基础第六讲】离散无记忆信源等长编码包括典型序列和等长信源编码定理
  • 如何开启华为交换机 http
  • Arm和高通闹翻在即,或影响骁龙 8 Elite
  • stm32实现esp8266连接到TCP服务器(二)
  • http——配置nginx服务通过ip访问多网站
  • 熟悉架构框架:TOGAF的四大核心架构
  • 依赖标签分类任务Smin值计算(蛋白质功能预测,GO标签)
  • 软考——计算机网络概论
  • 人工智能:技术的变革与未来的无限可能
  • HTTP 与 HTTPS 的区别:原理、安全性与应用场景
  • 交替打印数字/拓展多线程/多种实现方式
  • 德高望重的c语言
  • 量子纠错--shor‘s 码
  • Fast-LLM:加速大型语言模型训练的开源库
  • 抖店自动售后系统
  • # Tomcat NIO 配置实操指南
  • pytorch nn.NLLLoss和nn.CrossEntropyLoss函数区别
  • vue,java,webSocket通讯,服务端主动给多客户端发消息
  • 精准布局:探索CSS中的盒子固定定位的魅力
  • [计算机网络]第一周
  • ES6运算符
  • 汽车票预订系统:基于SpringBoot的创新