一种基于Android设备的国家码菜单及其使用方法
文献发布时间:2023-06-19 12:24:27
技术领域
本发明涉及设备国家码技术领域,特别是涉及一种基于Android设备的国家码菜单及其使用方法。
背景技术
Android手机中的国家码是由sim卡配置的,如果未插入sim卡,默认国家码为00。在进行WiFi信令测试时,常常会报一些信道连接Fail的问题。一般是由国家码导致的,因为当前测试信道该国家码并不支持。这时修改国家码就很有必要了。
目前修改WiFi国家码的方法有以下几种:通过“adb shell,wpa_cli-i wl an0set country[country_code]”命令设置国家码、通过“adb shell,iw reg set [country_code]”命令设置国家码、通过“adb shell,service call wifi[setCount ryCode_CODE]s16[country_code]”命令设置国家码、将WCNSS_qcom_wlan_ nv.bin文件取成xml文件然后将国家码修改成对应的国家以及通过修改WCNSS _qcom_cfg.ini修改国家码。
以上方法中前三种需要进入adb shell才能修改国家码,后两种需要修改源码文件,不是很灵活,存在一定的缺陷。
发明内容
本发明的目的在于,提供一种基于Android设备的国家码菜单及其使用方法,实现在无需使用adb shell的情况下,对国家码进行灵活修改。
为解决上述技术问题,本发明提供一种基于Android设备的国家码菜单,包括:菜单栏,所述菜单栏中设置有若干国家码选项。
进一步的,所述菜单栏使用java在AOSP/packages/apps/Settings和AOSP/frameworks/下进行开发。
进一步的,所述菜单栏为新增代码路径,所述新增代码路径中包含所有国家码逻辑。
本发明还提供一种基于Android设备的国家码菜单使用方法,包括如下步骤:
S100、拨号盘输入暗码调出菜单栏页面;
S200、在菜单栏页面选择相应国家码选项并确认;
S300、重启WiFi开关,完成国家码的设置。
进一步的,在步骤S100中,暗号调出菜单栏页面的运行逻辑为:系统接收暗号,进行Intent过滤条件,若符合要求,发送相应指令调出菜单栏页面。
进一步的,所述过滤条件在packages/apps/Settings或frameworks/base/packages/SystemUI的AndroidManifest.xml文件配置中,通过注册receiver进行添加。
进一步的,在步骤S200中,所述国家码选项确认完成后,其在新增代码路径中的对应国家码逻辑自动存入设备国家码运行路径中。
进一步的,在步骤S300中,所述国家码设置完成后,系统会生成国家码已设置完成的广播指令。
通过上述技术方案,本发明具有如下有益效果:
本发明提供的菜单栏页面合入到设备的软件版本中,不用担心有第三方应用那样的权限问题,是系统级别的功能性应用,可以以patch的形式合入到高通平台的Android项目中,在进行国家码的改变时,无需使用adb shell,且无需手动对国家码源码文件进行修改,灵活度高。
附图说明
图1为本发明基于Android设备的基于Android设备的国家码菜单示意图;
图2为本发明基于Android设备的基于Android设备的国家码菜单使用方法流程图。
具体实施方式
下面将结合示意图对本发明的基于Android设备的国家码菜单及其使用方法进行更详细的描述,其中表示了本发明的优选实施例,应该理解本领域技术人员可以修改在此描述的本发明,而仍然实现本发明的有利效果。因此,下列描述应当被理解为对于本领域技术人员的广泛知道,而并不作为对本发明的限制。
在下列段落中参照附图以举例方式更具体地描述本发明。根据下面说明和权利要求书,本发明的优点和特征将更清楚。需说明的是,附图均采用非常简化的形式且均使用非精准的比例,仅用以方便、明晰地辅助说明本发明实施例的目的。
如图1所示,本发明实施例提出了一种基于Android设备的国家码菜单,包括:菜单栏,所述菜单栏中设置有若干国家码选项。
所述菜单栏使用java在AOSP/packages/apps/Settings和AOSP/frameworks/ 下进行开发。在本实施方式中,使用java在AOSP/packages/apps/Settings和 AOSP/frameworks/下进行开发菜单栏软件,以patch的形式合入到高通平台的 Android项目中,避免了第三方应用的权限问题,使得菜单栏成为统级别的功能性应用,对于使用java在AOSP/packages/apps/Settings和AOSP/frameworks/下进行软件开发,为现有技术,在此不做赘述。
所述菜单栏为新增代码路径,所述新增代码路径中包含所有国家码逻辑。在本实施方式中,新增代码路径为packages/apps/Settings/src/com/android/settings /CountryCodeSettingActivity.java,在该路径中包含所有的国家码逻辑,所有国家码逻辑与国家码选项一一对应。
以下列举所述基于Android设备的国家码菜单的较优实施例,以清楚的说明本发明的内容,应当明确的是,本发明的内容并不限制于以下实施例,其他通过本领域普通技术人员的常规技术手段的改进亦在本发明的思想范围之内。
本发明实施例提出一种基于Android设备的国家码菜单使用方法,包括如下步骤:
S100、拨号盘输入暗码调出菜单栏页面;
具体的,暗号调出菜单栏页面的运行逻辑为:系统接收暗号,进行Intent 过滤条件匹配,若符合要求,发送相应指令调出菜单栏页面,过滤条件在packa ges/apps/Settings或frameworks/base/packages/SystemUI的AndroidManifest.xml 文件配置中,通过注册receiver进行添加,具体如下:
设定过滤条件为:
,
当拨号盘输入“*#*#7005#*#*”时,receiver接收到的Intent的指令为android.provider.Telephony.SECRET_CODE,此时系统调出菜单栏页面。
S200、在菜单栏页面选择相应国家码选项并确认;
具体的,Android设备的国家码运行路径通常为frameworks/opt/net/wifi/service/java/com/android/server/wifi/WifiCountryCode.java,该路径中存储有国家码逻辑,菜单栏页面的国家码选项确认完成后,其在新增代码路径中的对应国家码逻辑自动存入设备国家码运行路径中;
S300、重启WiFi开关,完成国家码的设置。
具体的,WiFi重启后,国家码运行路径采用PickCountryCode的方式选择上述存入设备国家码运行路径中的国家码逻辑,通过运行该逻辑,实现国家码的转换设置,同时,国家码设置完成后,系统会生成国家码已设置完成的广播指令,控制设备功放进行播放,以方便用户了解设置情况,特别说明的,国家码选项中亦可包含自动设置选项,WiFi重启后系统会判断是否选择了自动设置选项,若判断为否,则进行上述操作,若判断为是,则直接运行设备中原国家码逻辑。
综上所述,本发明相对于现有技术,具有如下优势:
本发明提供的菜单栏页面合入到设备的软件版本中,不用担心有第三方应用那样的权限问题,是系统级别的功能性应用,可以以patch的形式合入到高通平台的Android项目中,在进行国家码的改变时,无需使用adb shell,且无需手动对国家码源码文件进行修改,灵活度高。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
- 一种基于Android设备的国家码菜单及其使用方法
- 一种在Android的菜单中添加菜单项的方法及设备