微波EDA网,见证研发工程师的成长!
首页 > 研发问答 > 手机设计讨论 > MTK手机平台交流 > 89项目插gsm卡,显示3G网络

89项目插gsm卡,显示3G网络

时间:10-02 整理:3721RD 点击:
GSM四频 + W  89项目,插入gsm卡状态栏显示3G网络,如何修改 ?

Android4.1 如何实现状态栏上信号图标有SIM卡1,2标记,并且当处于2G状态显示“G”,处于3G状态显示“3G”
[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.systemui.ext.NetworkType;
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 TelephonyIcons.NETWORK_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的目录删除

非常感谢

Copyright © 2017-2020 微波EDA网 版权所有

网站地图

Top