2015-09-28 78 views
0

我需要確保SIM卡可以在指定設備中無需輸入PIN的情況下使用,但是必須在其他設備中使用。 (正在使用的設備已根植,應用程序被安裝爲系統應用程序)在Android中獲取SIM序列號

我想要識別SIM卡,並以編程方式輸入引腳(如果已知/保存)。

我可以輸入已知的PIN碼,當需要時,但我有一個SIM識別問題。

我發現我無法在輸入正確的PIN碼之前拿到SIM序列號或用戶ID。

我使用(與權限等)的方法:

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

的事情是,此方法返回null,如果需要引腳和尚未進入。

我的問題是,如果有這種解決方法。 有沒有可能? 是否有另一種方法?

想法和方法表示讚賞。 在此先感謝。

回答

0
TelephonyManager tm = (TelephonyManager) 
       getSystemService(Context.TELEPHONY_SERVICE); 
} 
String simID = tm.getSimSerialNumber(); 
String telNumber = tm.getLine1Number(); 
String IMEI = tm.getDeviceId(); 

權限:

<uses-permission android:name="android.permission.READ_PHONE_STATE"/> 

您的問題:

返回的電話號碼是什麼存儲在SIM卡的MSISDN,這是不被一些運營商填補。如果在印度嘗試Airtel,沃達豐。

+0

我知道MSISDN通常是空白的,但我相信序列號是靜態的,應該始終在那裏。我在這裏錯過了什麼嗎?謝謝 –