2016-03-21 32 views
0

私のAndroidアプリケーションは、デバイスの電話番号を取得する必要があります。私はそれを取得するためにメソッドgetLine1Number()を使用していますが、一部の電話機では間違った値を返します。Android携帯電話番号(MIN)

コード:

TelephonyManager tMgr = (TelephonyManager)c.getSystemService(Context.TELEPHONY_SERVICE); 
String number = tMgr.getLine1Number(); 

間違った値を返す電話は、Android 6.0.1を実行しているサムスンギャラクシーS6です。電話番号の電話設定では、同じ誤った値が表示されますが、MINでは正しい電話番号が表示されます。

誰でも私にこの問題の解決策を教えてもらえますか?私はAndroidの携帯電話からMINの値を取得する方法を見つけることができませんでした。私はこの電話機が間違った価値を返す理由を特定していません。

+0

アプリケーションコードを表示すると、何をしているのか分かりません。 – Halfstop

答えて

1

デバイスの電話番号を取得する機能はありません。いくつかのキャリアがSIMをセットアップする方法のために、デバイス自身が自分の電話番号が何であるかを実際に知ることはできません。実際に電話番号が必要な場合は、ユーザーに電話番号を要求する必要があります。電話番号が一意である必要がある場合は、ANDROID_IDなどの他の情報が適切です(タブレット、テレビ、テレビなどのアンドロイド端末にも電話番号があることを忘れないでください)。

+0

ありがとう、私は代替を見つける必要があります – aguerra