提示:Android 去 4G相关选项
文章目录
- 前言 - 需求 -场景
- 一、 参考资料
- 二、文件修改方案实现
- 三、实现方案
- 删除 短信、电话、通讯录 App
- 屏蔽SIM 、移动网络
- 1、删除-设置-网络与互联网-移动网络
- 2、删除-设置-网络与互联网-SIM
- 3、屏蔽掉-设备-关于-SIM状态
- 四、扩展知识-思考
- 设置相关-去掉菜单item - 方法思路
- 坑点-思考-窍门
- 总结
前言 - 需求 -场景
因为产品没有4G,需要把基本的4G上面内容去掉,如下是部分工作。
- 去掉4G相关 SIM卡、移动网络
- 去掉部分App: 短信、电话、通讯录
一、 参考资料
Android 系统去掉- 短信-电话-通讯录App实现 去掉4G 相关的App
定时开关机功能实现 这里重点核心关系的不是开关机如何实现,是一个第三方app,如何嵌入式进入设置App 界面里面
如下:常见 指导 如何分析和删除设置中菜单,常用的方法,如何找到为止、如何看日志 分析实现需求。
Android系统去掉WIFI模块
无障碍服务屏蔽_关闭无障碍服务快捷方式
Android 系统设置中去掉备份菜单
二、文件修改方案实现
删除 短信、电话、通讯录 App
/vendor/google/products/gms.mk/device/mediatek/system/common/device.mk/build/make/target/product/handheld_product.mk/vendor/mediatek/proprietary/packages/apps/Dialer/java/com/android/dialer/main/impl/AndroidManifest.xml屏蔽SIM 、移动网络
vendor/mediatek/proprietary/packages/apps/MtkSettings/AndroidManifest.xml vendor/mediatek/proprietary/packages/apps/MtkSettings/res/xml/my_device_info.xml vendor/mediatek/proprietary/packages/apps/MtkSettings/res/xml/network_provider_internet.xml三、实现方案
删除 短信、电话、通讯录 App
参考 Android 系统去掉- 短信-电话-通讯录App实现 去掉4G 相关的App ,进行了详细的介绍
如下效果:
屏蔽SIM 、移动网络
1、删除-设置-网络与互联网-移动网络
路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/res/xml/network_provider_internet.xml
删除如下代码片段:
<!--<com.android.settings.widget.AddPreferenceandroid:key="mobile_network_list"android:title="@string/network_settings_title"android:summary="@string/summary_placeholder"android:icon="@drawable/ic_network_cell"android:order="-15"settings:keywords="@string/keywords_more_mobile_networks"settings:userRestriction="no_config_mobile_networks"settings:allowDividerAbove="true"settings:useAdminDisabledSummary="true"/>-->2、删除-设置-网络与互联网-SIM
路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/AndroidManifest.xml
屏蔽掉如下内容:SimSettingsActivity 中的 intent-filter
<!--/// M: Add for SIM Settings Entry --><activity android:name="Settings$SimSettingsActivity"android:label="@string/sim_settings_title"android:icon="@drawable/ic_settings_sim"android:exported="false"android:configChanges="orientation|screenSize|smallestScreenSize|screenLayout|keyboardHidden|mcc|mnc"android:parentActivityName="Settings"><!--<intent-filter android:priority="1"><action android:name="com.android.settings.sim.SIM_SUB_INFO_SETTINGS"/><category android:name="android.intent.category.DEFAULT"/></intent-filter><intent-filter><action android:name="com.android.settings.action.SETTINGS"/></intent-filter><meta-data android:name="com.android.settings.order"android:value="-2"/><meta-data android:name="com.android.settings.category"android:value="com.android.settings.category.ia.wireless"/><meta-data android:name="com.android.settings.summary"android:resource="@string/summary_empty"/><meta-data android:name="com.android.settings.FRAGMENT_CLASS"android:value="com.mediatek.settings.sim.SimSettings"/>--></activity>3、屏蔽掉-设备-关于-SIM状态
路径:vendor/mediatek/proprietary/packages/apps/MtkSettings/res/xml/my_device_info.xml
屏蔽掉,如下代码:
<!--SIM status<Preferenceandroid:key="sim_status"android:order="18"android:title="@string/sim_status_title"settings:keywords="@string/keywords_sim_status"android:summary="@string/summary_placeholder"settings:enableCopying="true"/>--><!--Model&hardware-->四、扩展知识-思考
设置相关-去掉菜单item - 方法思路
自己总结有三种,如下:
- 直接在xml 里面屏蔽掉
preference - 在
controller中控制是否显示 ,方法是isAvailable - 嵌入式到
Settings场景,这里有两个典型案例:定时开关机功能实现 和 这里 屏蔽掉 SIM卡。
坑点-思考-窍门
为什么会有坑,因为按照常理,如上思路一二去分析、查找源码,怎么都找不到,花费大量时间和精力就是找不到需要屏蔽的菜单。 所以 一定要记得Settings菜单可能是嵌入、侵入式存在插入进来的,设置里面或者在其它第三方app 里面配置情况都存在,这种情况在手机方案中特别常见。
屏蔽菜单窍门:
假使就是不知道在哪里屏蔽菜单,可以点击菜单进入后可以查一下进入菜单的Activity界面,然后在配置文件AndroidMenifest.xml配置的activity里面配置文件看看,然后屏蔽掉即可。
总结
- 去4G模块是常见的客需需求,需要掌握最基本的方法、思路。需要熟悉配置文件,知道如何配置和屏蔽实现裁剪目的。
- 对于设置去菜单需求,一定要知道方案、方法。 知道如何找到对应位置。