android 设定默认开机时的network mode

network mode的常见类型有

WCDMA preferred : 0

GSM only : 1

WCDMA only : 2

GSM UMTS : 3

CDMA : 4

... (参考RILConstants.java)

是透过AT+ERAT把mode的值丢给modem,让modem设定对应的mode。 如果是TDD手机,那么其network mode的值和WCDMA是对应的。

WCDMA preferred -- TD-SCDMA preferred

WCDMA only -- TD-SCDMA only

这个network mode在第一次开机时会有一个参数来记录默认值,这个参数就是PREFERRED_NETOK_MODE,该参数定义在在RILConstants.java中。在SettingProvider loading的时候,这个参数的值就写到Settings.Global.PREFERRED_NETWOK_MODE当中(参考SettingsProvider中的DatabasHelper.java)。然后在make default phone的时候就根据Settings.Global.PREFERRED_NETWOK_MODE取出来的值来使用。

注:因为network mode是End user可以通过操作setting菜单切换的,所以本FAQ只是修改download完第一次开机的network mode默认值

AP端修改如下:

有了上述的描述,设定默认的network mode比较简单,就是把PREFERRED_NETWORK_MODE的默认取值修改掉即可,目前PREFERRED_NETOK_MODE默认值是NETWORK_MODE_WCDMA_PREF。

例如默认设成GSM only:

RILConstants.java 路径: alps/framework/base/telephony/java/com/android/internal/telephony/

Modem端修改如下:

modem端修改preferred rat对应的nvram 是NVRAM_EF_RAC_PREFERENCE_LID

请帮忙根据需要修改相关default数组COMMON_NVRAM_EF_RAC_PREFERENCE_DEFAULT的IR preferred RAT(红色highlight部分):

/* 4th byte is IR preferred RAT and MM preferred RAT */

// MM preferred RAT 0x00 : RAT_NONE 0x01 : RAT_GSM 0x02 : RAT_UMTS

0x00

+

// IR preferred RAT 0x00 : RAT_NONE 0x10 : RAT_GSM 0x20 : RAT_UMTS

0x20 //

时间: 2024-11-06 12:02:09

android 设定默认开机时的network mode的相关文章

Android 系统默认参数的修改

转自: http://www.th7.cn/Program/Android/201505/447097.shtml 写在前面的话 一般在新项目开始之初,我们需要针对客户需求进行各种系统默认属性的配置,通常这些属性都是通过build.prop.settings.db .default.xml.一些功能package下的 config.xml 等来进行初始化配置的. 那么,要满足客户的定制需求,对于我们开发者来说,修改SettingsProvider默认值,而第一次开机时,用来填充settings.

Android系统默认Home应用程序(Launcher)的启动过程源码分析

在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还须要有一个Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了,本文将详细分析Launcher应用程序的启动过程. Android系统的Home应用程序Launcher是由ActivityManagerService启动的,而ActivityManagerService和PackageManagerService一样,都是在开机时由

Android系统默认Home应用程序(Launcher)的启动过程源代码分析

在前面一篇文章中,我们分析了Android系统在启动时安装应用程序的过程,这些应用程序安装好之后,还需要有一个 Home应用程序来负责把它们在桌面上展示出来,在Android系统中,这个默认的Home应用程序就是Launcher了,本文将详细分析 Launcher应用程序的启动过程. Android系统的Home应用程序Launcher是由ActivityManagerService启动的,而 ActivityManagerService和PackageManagerService一样,都是在开

android中定时开关机的实现

关于android自动关机,网上有很多应用程序和例子. 相对于自动开机来说,自动关机可以在应用层通过设置alarm来实现.而自动开机,它需要底层rtc时钟的支持. 简介 我的实现是在设置程序里面增加一个接口,让用户设置自动开关机,这个自动开关机的设置可以参照闹钟的设置.关于自动关机,考虑到关机的时候,用户可能正有一些重要的操作,那么应该给用户一个机会去取消当前的关机. 1)一个BroadcastReceiver, 接收如下信息: a) 自定义的ACTIONREQUESTPOWEROFF:设置au

Android开发周报:Android L默认加密用户数据

Android开发周报:Android L默认加密用户数据 新闻 <iCloud前车之鉴,Android L默认开启加密功能>:iCloud 艳照风波再起,第二波女星照片流出,大量女星的裸照又开始在社交网站疯传,本次大规模的“艳照门”依然有可能是黑客利用苹果iCloud云端系统的漏洞, 在破解了女艺人们所设的简单密码后侵入并非法盗取了裸照,继而在网络论坛发布.注重保护用户的隐私,是厂商们义不容辞的责任,谷歌宣布Android L上将默认加密用户数据. <苹果出了个指南教你怎么从Andro

Android设置默认Launcher

当系统存在多个launcher时,若没有设置默认launcher,开机启动后会弹出提示框,罗列所有launcher,用户选择并设置了默认launcher后,按home键以及以后重启都会进入默认的launcher. 现在,我希望系统能直接就进入我设定的launcher而不是弹出框后选择然后设置 网上大部分的做法就是修改 packages/apps/Provision/src/com/android/DefaultActivity.java 和 framework/base/java/com/and

Android Studio快速开发之道

概述 现如今开发越来越追求效率和节奏,节省出时间做更多的事情,除了开发技术上的封装等,开发工具的使用技巧也是很重要的,今天就根据自己的经验来给大家介绍一下Android Studio快速开发之道. Postfix completion 介绍 Postfix completion 是IntelliJ IDEA很早就有的功能,该功能基于已经输入的表达式和你添加的后缀来实现另一个你想要的表达式.例如在布尔表达式之后加上后缀if就是if语句 . 常用后缀介绍 下面介绍一下个人工作中觉得比较常用的几个后缀

修改Android Studio默认的API Level(SDK版本)

原文:修改Android Studio默认的API Level(SDK版本) Android Studio(2.1.2)新建工程的时候只会让你选择最低支持的SDK版本,默认的目标编译SDK版本会以系统当前SDK中最新SDK platform作为目标的API Level.但是很多时候我们并不需要最新的SDK版本,如何修改呢? 方法是:修改工程目录中的Gradle Scripts->build.gradle(Module:app)中的相关行,具体见下图: 当然也可以图形化操作,右键工程目录选择"

[Android]Volley源码分析(叁)Network

如果各位看官仔细看过我之前的文章,实际上Network这块的只是点小功能的补充.我们来看下NetworkDispatcher的核心处理逻辑: <span style="font-size:18px;">while (true) { try { // Take a request from the queue. request = mQueue.take(); } catch (InterruptedException e) { // We may have been int