第一句子网 - 唯美句子、句子迷、好句子大全
第一句子网 > Android4.1 如何实现状态栏上信号图标有SIM卡1 2标记 并且当处于2G状态显示“G”

Android4.1 如何实现状态栏上信号图标有SIM卡1 2标记 并且当处于2G状态显示“G”

时间:2023-09-09 05:40:29

相关推荐

Android4.1 如何实现状态栏上信号图标有SIM卡1 2标记 并且当处于2G状态显示“G”

[Android Version]

6577/6589 Android V4.1

[Description] 如何实现状态栏上信号图标有SIM卡1,2标记,并且当处于2G状态显示“G”,处于3G状态显示“3G”,类似联通定义的feature [Solution] 请按照下面的步骤实验: 1. \mediatek\operator\OP02\packages\apps\Plugins\res\drawable-hdpi, 将这下面的图片资源添加到默认的systemUI路径frameworks\base\packages\SystemUI\res\drawable-hdpi,其中fm与sms相关的7个图标可以不添加

2. 为了build到上面的资源,请在frameworks\base\packages\SystemUI\res\layout\status_bar.xml 随便加个换行,目的是可以执行build 到res资源

3. frameworks\base\packages\SystemUI\Android.mk文件将com.mediatek.systemui.ext注释掉,如下:

LOCAL_STATIC_JAVA_LIBRARIES := android-common-carousel

#com.mediatek.systemui.ext

4. 将mediatek\operator\OP02\packages\apps\Plugins\src\com\mediatek\systemui\plugin\TelephonyIcons.java 文件复制到 frameworks\base\packages\ext\src\com\mediatek\systemui\ext 目录下,并修改TelephonyIcons.java文件的包名,增加import的resource文件 package com.mediatek.systemui.ext; import com.android.systemui.R;

5. 修改frameworks\base\packages\SystemUI\src\com\mediatek\systemui\ext\DefaultStatusBarPlugin.java文件,主要是修改为mediatek\operator\OP02\packages\apps\Plugins\src\com\mediatek\systemui\plugin\Op02StatusBarPlugin.java的样子,具体如下:

(1) 增加

import com.mediatek.systemui.ext.DataType;

import com.mediatek.workType;

import com.android.systemui.R; (2) public Resources getPluginResources() {

return this.getResources();

//return null;

}

(3) public int getSignalStrengthNullIconGemini(int slotId) {

if (slotId == 0) {

return R.drawable.stat_sys_gemini_signal_null_sim1;//显示无信号图标

} else if (slotId == 1) {

return R.drawable.stat_sys_gemini_signal_null_sim2; //显示无信号图标

}

return -1;

}

(4) public int getSignalIndicatorIconGemini(int slotId) {

if (slotId == 0) {

return R.drawable.stat_sys_gemini_signal_indicator_sim1;

} else if (slotId == 1) {

return R.drawable.stat_sys_gemini_signal_indicator_sim2;

}

return -1;

}

(5) public int[] getDataTypeIconListGemini(boolean roaming, DataType dataType) {

int[] iconList = null;

if (roaming) {

iconList = TelephonyIcons.DATA_ROAM[dataType.getTypeId()];

}

return iconList;

//return null;

}

(6) public int getDataNetworkTypeIconGemini(NetworkType networkType, int simColorId) {

int typeId = networkType.getTypeId();

if (typeId >= 0 && typeId <= 1) {

return WORK_TYPE[typeId][simColorId];

}

return -1;

}

(7) public String get3gDisabledWarningString() {

return getString(R.string.gemini_3g_disable_warning);

//return null;

} 6. frameworks\base\packages\SystemUI\ext\Android.mk 删除这个mk文件

7. frameworks\base\packages\\SystemUI\ext\src\com目录下mediatek的folder 复制到\frameworks\base\packages\SystemUI\src\com路径下,与android部分并列

8. frameworks\base\packages\SystemUI\ext\ 将ext的目录删除

单卡项目如何实现状态栏上信号图标左边在网络处于2G状态显示“G”,处于3G状态显示“3G”图标 单卡的项目目前没有显示G图标的layout,如果要做此feature需要参考双卡文件对应的修改:

完成feature的步骤: (1)添加view id (2)对view id进行初始化 (3)之后就是在网络状态变化时显示不同的图标,也就是控制图标的更新 完成feature的方法: 1. layout gemini_signal_cluster_view.xml 有个view是network_type,请在单卡文件signal_cluster_view.xml也对应的增加这个view

2. 搜索这个view id “network_typenetwork_type”被使用的地方等,将signalclusterviewgemini与networkcontrollergemini文件对应的修改merge到signalclusterview与networkcontroller。

Android4.1 如何实现状态栏上信号图标有SIM卡1 2标记 并且当处于2G状态显示“G” 处于3G状态显示“3G”

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。