手机号码的API获取接口

    手机号码的API获取接口

 
 
[SOLUTION]
 
 
一:需要权限:

// neet add Permission at manifest file
  <uses-permission android:name="android.permission.READ_PHONE_STATE" />


二: 使用方法:

kk版本上:

// 1: get  TelephonyManager
 
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);  

// 2: get phone number

String phoneId = tm.getLine1Number(simID);

L0版本上:

// 1: get TelephonyManager

TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);

//2: get phone number

String phoneId = tm.getLine1Number()

注:这个接口是获取Default SubId 对应SIM 的number。

String phoneId = tm.getLine1NumberForSubscriber(long subId)

注:获取指定SubId对应SIM的number。

在L1上获取电话号码的接口与L0上保持一致。

注: 电话号码的获取是通过SIM中EF_MSISDN文件,而此文件在Spec中规定是option的,即此文件是可有可无的,所以很多时候我们通过API并不能获取到number。可以通过同一张SIM张插入不同对比机验证也可以相同的手机插入不同SIM去确认SIM中文件EF_MSISDN是否存在。

你可能感兴趣的:(手机号码的API获取接口)