getLine1Number()不起作用

我想使用android获取SIM卡号码,但是当我得到号码时,长度为零! 这是代码:

TelephonyManager mTelephonyMgr = (TelephonyManager) getSystemService(getApplicationContext().TELEPHONY_SERVICE); String s=mTelephonyMgr.getLine1Number(); Toast.makeText(getBaseContext(), "The length is "+s.length(), Toast.LENGTH_LONG).show(); 

但它会敬酒“长度为零”。 当我打印数字时,它什么都不打印。 谁能给我一个解决方案?

获取SIM卡号码

  TelephonyManager telemamanger = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE); String getSimSerialNumber = telemamanger.getSimSerialNumber(); 

获取电话号码

 TelephonyManager tMgr =(TelephonyManager)mAppContext.getSystemService(Context.TELEPHONY_SERVICE); mPhoneNumber = tMgr.getLine1Number(); 

这将显示你,如果适用的其他我会显示这个 。

伙计也发生在我身上,最后我才知道这个解决方案