2011-12-21 165 views
2

我正在制作一个应用程序,在该应用程序中我必须获取GSM设备的手机号码,并使用以下代码在TextView中向手机号码显示,但都是徒劳的。任何人都可以帮我做到这一点。获取设备的电话号码

TelephonyManager mTelephonyMgr; 
    mTelephonyMgr = (TelephonyManager) 
     getSystemService(Context.TELEPHONY_SERVICE); 

    String number = mTelephonyMgr.getLine1Number(); 

    Phoneno=(TextView)findViewById(R.id.Phoneno); 


    Phoneno.setText(number); 
+1

有没有错误? , 你能看见什么? – 2011-12-21 12:59:03

+0

A.Quiroga,我什么都没有收到,它什么都没显示,我用的是gsm设备 – Aditya1510 2011-12-21 13:01:23

+0

你需要什么? – 2011-12-21 13:02:36

回答

2

确保您需要的权限READ_PHONE_STATE清单中

希望This将帮助您

+1

我使用了您提到的权限,但它仍然不显示任何内容 – Aditya1510 2011-12-26 05:42:54

0

TelephonyManager.getLine1Number()是迄今为止唯一可用的解决方案。实际上,sim不包含有关号码的信息。它仅由网络提供。此外,这也是sim依赖的。对于某些设备(TelephonyManager.getLine1Number ))会工作。对于一些它可能不会。