1、近日,查看测试提出的bug时,发现了一个问题,设备在未安装sim卡时,状态栏中不显示无sim卡的图标。
2、解决
路径:****\frameworks\base\packages\SystemUI\src\com\android\systemui\statusbar\phone\StatusBarSignalPolicy.java
在StatusBarSignalPolicy.java中,找到setNoSims方法,发现该方法是空的,并未实现功能。如下图,解决该问题,
@Overridepublic void setNoSims(boolean show, boolean simDetected) {// Noop yay!if (show && !simDetected) {mIconController.setIcon(mSlotMobile, R.drawable.stat_sys_no_sims, "no_sim");mIconController.setIconVisibility(mSlotMobile, true);} else {mIconController.setIconVisibility(mSlotMobile, false);}}
3、在SystemUI目录下的res/drawable中添加stat_sys_no_sims.xml文件,内容如下:
<?xml version="1.0" encoding="utf-8"?><vector xmlns:android="http://schemas.android.com/apk/res/android"android:width="17dp"android:height="17dp"android:viewportWidth="18.4"android:viewportHeight="18.4"><groupandroid:translateX="0.7"android:translateY="1.0"><pathandroid:pathData="M13.91,11.84L5.14,3.08l1.81,-1.81h5.41c0.85,0 1.54,0.69 1.54,1.54l0.01,9.03zM15.06,14.95L2.54,2.44c-0.28,-0.28 -0.71,-0.28 -0.99,0s-0.28,0.71 0,0.98l1.53,1.53v8.67c0,0.85 0.69,1.54 1.54,1.54h7.74c0.27,0 0.52,-0.07 0.74,-0.2l0.96,0.96c0.28,0.28 0.71,0.28 0.99,0 0.28,-0.26 0.28,-0.69 0.01,-0.97z"android:fillColor="#ffffff"/></group>
</vector>