Android 首选网络类型式默认值的修改方法

源码部分

//设置
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java// Set the preferred network mode to target desired value or Default
// value defined in system property
String val = "";
String mode;
for (int phoneId = 0;phoneId < TelephonyManager.getDefault().getPhoneCount(); phoneId++) {mode = TelephonyManager.getTelephonyProperty(phoneId,"ro.telephony.default_network",Integer.toString(RILConstants.NETWORK_MODE_WCDMA_PREF));if (phoneId == 0) {val = mode;} else {val = val + "," + mode;}
}
loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val);
//网络类型
frameworks/base/telephony/java/com/android/internal/telephony/RILConstants.java/* NETWORK_MODE_* See ril.h RIL_REQUEST_SET_PREFERRED_NETWOR
/** GSM, WCDMA (WCDMA preferred) */
int NETWORK_MODE_WCDMA_PREF = 0;
/** GSM only */
int NETWORK_MODE_GSM_ONLY = 1;
/** WCDMA only */
int NETWORK_MODE_WCDMA_ONLY = 2;
/** GSM, WCDMA (auto mode, according to PRL) */
int NETWORK_MODE_GSM_UMTS = 3;
/** CDMA and EvDo (auto mode, according to PRL) */
int NETWORK_MODE_CDMA = 4;
/** CDMA only */
int NETWORK_MODE_CDMA_NO_EVDO = 5;
/** EvDo only */
int NETWORK_MODE_EVDO_NO_CDMA = 6;
/** GSM, WCDMA, CDMA, and EvDo (auto mode, according to PRL)
int NETWORK_MODE_GLOBAL = 7;
/** LTE, CDMA and EvDo */
int NETWORK_MODE_LTE_CDMA_EVDO = 8;
/** LTE, GSM and WCDMA */
int NETWORK_MODE_LTE_GSM_WCDMA = 9;
/** LTE, CDMA, EvDo, GSM, and WCDMA */
int NETWORK_MODE_LTE_CDMA_EVDO_GSM_WCDMA = 10;
/** LTE only mode. */
int NETWORK_MODE_LTE_ONLY = 11;
/** LTE and WCDMA */
int NETWORK_MODE_LTE_WCDMA = 12;
/** TD-SCDMA only */
int NETWORK_MODE_TDSCDMA_ONLY = 13;
/** TD-SCDMA and WCDMA */
int NETWORK_MODE_TDSCDMA_WCDMA = 14;
/** LTE and TD-SCDMA*/
int NETWORK_MODE_LTE_TDSCDMA = 15;
/** TD-SCDMA and GSM */
int NETWORK_MODE_TDSCDMA_GSM = 16;
/** TD-SCDMA, GSM and LTE */
int NETWORK_MODE_LTE_TDSCDMA_GSM = 17;
/** TD-SCDMA, GSM and WCDMA */
int NETWORK_MODE_TDSCDMA_GSM_WCDMA = 18;
/** LTE, TD-SCDMA and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_WCDMA = 19;
/** LTE, TD-SCDMA, GSM, and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_GSM_WCDMA = 20;
/** TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 21;
/** LTE, TDCSDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 22;
/** NR 5G only mode */
int NETWORK_MODE_NR_ONLY = 23;
/** NR 5G, LTE */
int NETWORK_MODE_NR_LTE = 24;
/** NR 5G, LTE, CDMA and EvDo */
int NETWORK_MODE_NR_LTE_CDMA_EVDO = 25;
/** NR 5G, LTE, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_GSM_WCDMA = 26;
/** NR 5G, LTE, CDMA, EvDo, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_CDMA_EVDO_GSM_WCDMA = 27;
/** NR 5G, LTE and WCDMA */
int NETWORK_MODE_NR_LTE_WCDMA = 28;
/** NR 5G, LTE and TDSCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA = 29;
/** NR 5G, LTE, TD-SCDMA and GSM */
int NETWORK_MODE_NR_LTE_TDSCDMA_GSM = 30;
/** NR 5G, LTE, TD-SCDMA, WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_WCDMA = 31;
/** NR 5G, LTE, TD-SCDMA, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_GSM_WCDMA = 32;
/** NR 5G, LTE, TD-SCDMA, CDMA, EVDO, GSM and WCDMA */
int NETWORK_MODE_NR_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA = 33;int PREFERRED_NETWORK_MODE = Integer.parseInt(TelephonyManager.getTelephonyProperty(0,"ro.telephony.default_network", Integer.toString(NETWORK_MODE_WCDMA_PREF)));

默认值设置

  • 修改系统属性
#卡1用的是22,卡2用的是20
ro.telephony.default_network=22,20
  • 未设置系统属性时
int PREFERRED_NETWORK_MODE = Integer.parseInt(TelephonyManager.getTelephonyProperty(0,
-        "ro.telephony.default_network", Integer.toString(NETWORK_MODE_WCDMA_PREF)));
+        "ro.telephony.default_network", Integer.toString(NETWORK_MODE_LTE_TDSCDMA_CDMA_EVDO_GSM_WCDMA)));
  • 修改设置数据库
frameworks/base/packages/SettingsProvider/src/com/android/providers/settings/DatabaseHelper.java- loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, val);
+ loadSetting(stmt, Settings.Global.PREFERRED_NETWORK_MODE, 22);

Android系统首选网络类型设置相关推荐

  1. Android 7.1 双卡双待机器,首选网络类型设置 详细分析

    首次由preferred_network_mode转换成preferred_network_mode1和preferred_network_mode2是在SubscriptionInfoUpdater ...

  2. Android 8.1 设置中首选网络类型缺少LTE

    平台 RK3399 + Android 8.1 问题: 设置 > 更多 > 移动网络 > 首选网络类型 选项中, 仅显示 3G和2G, 缺少LTE, 本身模块与SIM卡是支持LTE的 ...

  3. [Android7.1][RK3399] 将设置首选网络类型由3G设置为LTE

    Platform: RK3399 OS: Android 7.1 Kernel: v4.4.126 需求 将设置首选网络类型由3G设置为LTE 设置步骤 diff --git a/rk3399_mid ...

  4. 设置里首选网络类型由3G改成4G

    Android首选网络类型默认修改 1.源码路径:androidm/frameworks/base/packages/SettingsProvider/src/com/android/provider ...

  5. 安卓网络类型设置的实现

    工作背景:公司出口国外某国的设备,因为该国对4G认证要求较高,流程非常麻烦,客户不想取得4G方面认证,因此订单机器设备需禁用4G,且不能手动恢复4G,默认3G/2G(auto)模式. 实现思路:在安卓 ...

  6. Android 系统属性读取和设置详解

    Android 系统属性读取和设置详解 一.在adb中进行属性读取和设置 1.Settings Provider设置和读取 获取 设置 2.SystemProperties属性读取和设置 二.Andr ...

  7. 系统首选dns服务器修改,Windows系统首选DNS如何设置

    Windows 系统首选DNS如何设置的呢,有时候可能需要修改或者调整 DNS 服务器地址的设置,以达到优化网络连接速度的效果.该怎么办?下面是学习啦小编收集整理的Windows 系统首选DNS如何设 ...

  8. linux ubuntu联网设置方法,Ubuntu系统无线网络连接设置方法

    Ubuntu系统无线网络连接设置方法 Ubuntu是一个流行的Linux操作系统,本文将介绍一下穹的无线网络连接设置方法,想了解更多相关信息,请持续关注我们应届毕业生考试网! 1. 在上面板的波纹图标 ...

  9. Android CTA认证设定首选网络类型

    需求 硬件只支持4G,过CTA认证时打网络电话,会出现3G网络的选择,会导致过不了,需要禁用3G网络选择功能. Android 8.1.0 分析 可adb命令查看当前的网络类型 getprop | g ...

最新文章

  1. 系统架构设计:进程缓存和缓存服务,如何抉择?
  2. 疫情之下,供应链金融的“危”与“机-转发
  3. 爬虫实战:嗅事百科段子多页爬取
  4. 4 Git 分支 - 分支开发工作流
  5. CAFFE(FAQ.2):Ubuntu 配置caffe 框架之数据库读取,错误解决:ImportError: No module named leveldb解决办法...
  6. Java-Parallel GC介绍
  7. Android 平台视频播放器demo
  8. 简单c语言程序例子与运行结果图,C语言程序第一次作业
  9. W10一键进入安全模式
  10. 【数字IC设计/FPGA】推挽输出和开漏输出
  11. Java学习--多线程案例--模拟火车票销售(线程安全问题)
  12. python显示图片image_用Python语言显示图片的倒影效果
  13. bigworld源码分析(3)——dbMgr分析
  14. PostgreSQL之如何敲开PG的大门?
  15. Unity debugger detected e0030 sentinel ldk protection system
  16. Oracle同义词。。。
  17. 《SQL必知必会》读书笔记上(第1~15章)
  18. 443_J1939源地址与目标地址的使用和判断
  19. JAVA中的集合的概念
  20. 中国市场迎来AR-HUD元年

热门文章

  1. 欢乐Flash夏令营
  2. 度量学习(Metric Learning)【AMSoftmax、Arcface】
  3. QT UTC(T和Z格式)时间转换为北京时间
  4. 20220910最新版Redis7源码编译及windows中安装
  5. matlab里pascal是什么意思_手机里那些英文文件夹,都代表什么意思?还不知道的快了解一下...
  6. 计算机无法连接单片机,Win10系统识别不了51单片机怎么办?Windows10无法识别51单片机的解决方法...
  7. 【html】对于px、em、rem的理解
  8. Nvidia Jetson AGX Orin 64G深度学习环境配置的超详细教程
  9. 巡风系统搭建(docker)
  10. 隧道施工人员、车辆定位通用技术