Android系统首选网络类型设置
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系统首选网络类型设置相关推荐
- Android 7.1 双卡双待机器,首选网络类型设置 详细分析
首次由preferred_network_mode转换成preferred_network_mode1和preferred_network_mode2是在SubscriptionInfoUpdater ...
- Android 8.1 设置中首选网络类型缺少LTE
平台 RK3399 + Android 8.1 问题: 设置 > 更多 > 移动网络 > 首选网络类型 选项中, 仅显示 3G和2G, 缺少LTE, 本身模块与SIM卡是支持LTE的 ...
- [Android7.1][RK3399] 将设置首选网络类型由3G设置为LTE
Platform: RK3399 OS: Android 7.1 Kernel: v4.4.126 需求 将设置首选网络类型由3G设置为LTE 设置步骤 diff --git a/rk3399_mid ...
- 设置里首选网络类型由3G改成4G
Android首选网络类型默认修改 1.源码路径:androidm/frameworks/base/packages/SettingsProvider/src/com/android/provider ...
- 安卓网络类型设置的实现
工作背景:公司出口国外某国的设备,因为该国对4G认证要求较高,流程非常麻烦,客户不想取得4G方面认证,因此订单机器设备需禁用4G,且不能手动恢复4G,默认3G/2G(auto)模式. 实现思路:在安卓 ...
- Android 系统属性读取和设置详解
Android 系统属性读取和设置详解 一.在adb中进行属性读取和设置 1.Settings Provider设置和读取 获取 设置 2.SystemProperties属性读取和设置 二.Andr ...
- 系统首选dns服务器修改,Windows系统首选DNS如何设置
Windows 系统首选DNS如何设置的呢,有时候可能需要修改或者调整 DNS 服务器地址的设置,以达到优化网络连接速度的效果.该怎么办?下面是学习啦小编收集整理的Windows 系统首选DNS如何设 ...
- linux ubuntu联网设置方法,Ubuntu系统无线网络连接设置方法
Ubuntu系统无线网络连接设置方法 Ubuntu是一个流行的Linux操作系统,本文将介绍一下穹的无线网络连接设置方法,想了解更多相关信息,请持续关注我们应届毕业生考试网! 1. 在上面板的波纹图标 ...
- Android CTA认证设定首选网络类型
需求 硬件只支持4G,过CTA认证时打网络电话,会出现3G网络的选择,会导致过不了,需要禁用3G网络选择功能. Android 8.1.0 分析 可adb命令查看当前的网络类型 getprop | g ...
最新文章
- 系统架构设计:进程缓存和缓存服务,如何抉择?
- 疫情之下,供应链金融的“危”与“机-转发
- 爬虫实战:嗅事百科段子多页爬取
- 4 Git 分支 - 分支开发工作流
- CAFFE(FAQ.2):Ubuntu 配置caffe 框架之数据库读取,错误解决:ImportError: No module named leveldb解决办法...
- Java-Parallel GC介绍
- Android 平台视频播放器demo
- 简单c语言程序例子与运行结果图,C语言程序第一次作业
- W10一键进入安全模式
- 【数字IC设计/FPGA】推挽输出和开漏输出
- Java学习--多线程案例--模拟火车票销售(线程安全问题)
- python显示图片image_用Python语言显示图片的倒影效果
- bigworld源码分析(3)——dbMgr分析
- PostgreSQL之如何敲开PG的大门?
- Unity debugger detected e0030 sentinel ldk protection system
- Oracle同义词。。。
- 《SQL必知必会》读书笔记上(第1~15章)
- 443_J1939源地址与目标地址的使用和判断
- JAVA中的集合的概念
- 中国市场迎来AR-HUD元年
热门文章
- 欢乐Flash夏令营
- 度量学习(Metric Learning)【AMSoftmax、Arcface】
- QT UTC(T和Z格式)时间转换为北京时间
- 20220910最新版Redis7源码编译及windows中安装
- matlab里pascal是什么意思_手机里那些英文文件夹,都代表什么意思?还不知道的快了解一下...
- 计算机无法连接单片机,Win10系统识别不了51单片机怎么办?Windows10无法识别51单片机的解决方法...
- 【html】对于px、em、rem的理解
- Nvidia Jetson AGX Orin 64G深度学习环境配置的超详细教程
- 巡风系统搭建(docker)
- 隧道施工人员、车辆定位通用技术