2013-05-30 114 views
0

我已經看到關於此問題的所有最多的所有帖子,但仍未解決。我嘗試從TelephonyManager.getVoiceMailNumber(),getLine1Number()獲取它,但它將返回爲「null」。如何從android中的真實設備獲取手機號碼?

請幫我解決它,如果有其他方式來獲得它。

+0

你可以得到,但不是在每個SIM卡。因爲有些公司不提供它.. – Riser

回答

0

添加此權限。

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

雅我已經使用它。更多的我曾經獲得IMEI號模擬器以及SIM卡沒有,但試圖找到手機號碼。 –

0

根據文檔.getLine1Number() 「返回1號線的手機串號,例如MSISDNGSM電話。返回NULL,如果它是不可用的。」

顯然.getLine1Number()從SIM卡讀取這些信息,所以如果操作員設置了MSISDN字段,它將返回它的值,如果它們沒有設置這個字段,則返回null。

在你的情況下,你的SIM卡可能沒有這個字段填充的運營商。

欲瞭解更多信息您可以Visit this

我從here得到這個。

+0

感謝您的回覆。好的,我怎麼檢查MSISDN?我檢查了你提供的鏈接,並在我的電話中檢查了電話 - >關於電話 - >狀態 - >我的電話號碼顯示「未知」。 –

+0

@VilasmatiHanjagi所以你不能得到手機號碼,因爲SIM卡不包含手機號碼 –

+0

好的,但我們可以得到它,一旦我們有SIM卡與有效的設置。不管怎樣,謝謝! –

0

當讀這個quiestion時,我開始環顧相同問題的人,發現this thread。看起來好像並非所有的運營商/提供商都會將MSISDN號碼(電話號碼)發送到您的手機(正如Segi之前已經指出的那樣)。

如果您轉到設置 - >關於 - >「手機身份」,您可能會發現SIM卡上是否有號碼。在我的情況下,它說'未知「。

+0

現在我們可以得出結論,除非移動運營商/服務提供商將MSISDN設置爲我們的SIM卡,否則我們無法獲得手機號碼。 –

相關問題