Mtk6515在代码中区分运营商
来自个人维基
- 区分运营商
/** * get operator type * @return operator type */ private static OpIndex getOpIndex(){ //MTK_OPTR_PROTECT_START String optr = SystemProperties.get("ro.operator.optr"); if (optr != null) { if(optr.equals("OP01")) { return OpIndex.OP_CMCC; } else if(optr.equals("OP02")) { return OpIndex.OP_CU; } else if(optr.equals("OP03")) { return OpIndex.OP_ORANGE; } } //MTK_OPTR_PROTECT_END return OpIndex.OP_NONE; }
- 此属于Android 属性表内容,可用adb命令获取其取值
$:adb shell $:getprop ro.operator.optr
- 但直接使用 setprop试图改变其属性是不可行的,要改变可以通过更改
out/target/product/bbk15_td_ics/recovery/root/default.prop out/target/product/bbk15_td_ics/system/build.prop
- 然后再push到对应目录,重启手机即可.
- 项目中对属性ro.operator.optr的配置
- mediatek/config/bbk15_td_ics/ProjectConfig.mk
OPTR_SPEC_SEG_DEF = OP01_SPEC0200_SEGC
- build/target/product/common.mk
OPTR := $(word 1,$(subst _,$(space),$(OPTR_SPEC_SEG_DEF))) SPEC := $(word 2,$(subst _,$(space),$(OPTR_SPEC_SEG_DEF))) SEG := $(word 3,$(subst _,$(space),$(OPTR_SPEC_SEG_DEF)))
PRODUCT_PROPERTY_OVERRIDES += \ ro.operator.optr=$(OPTR) \ ro.operator.spec=$(SPEC) \ ro.operator.seg=$(SEG)