MTK根据SIM卡slotId获取可以保存名字和号码的最大长度

private int mMaxNameLength = 0;
private int mMaxNumberLength = 0;

public int getAdnNameAndNumberLength(int slotId) {

int[] simInfo;
ITelephonyEX mItelephonyEX = ITelephonyEX.Stub
.asInterface(ServiceManager
.getServices(Context.TELEPHONY_SERVICE));
try {
simInfo = mItelephonyEX.getAdnStorageInfo(slotId);
if (simInfo != null) {

mMaxNameLength = simInfo[3];    //可以存储名字最大长度

/*如果存入是汉字,那么可以储存(mMaxNameLength  -2)/2   个

如果是拉丁文,那么可以储存mMaxNameLength   -3 个

*/

mMaxNumberLength = simInfo[2]; //可以存储号码最大长度

}
} catch (Exception e) {
// TODO: handle exception
}

}


PS:

  SIM卡名字对应的输入框的mimeType是 :#displayName, 号码对应的是 :vnd.android.cursor.item/phone_v2

你可能感兴趣的:(android)