是的我使用了正确的权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
这是我的代码:
private String getDevicePhoneNumber() {
TelephonyManager mTelephonyMgr;
mTelephonyMgr = (TelephonyManager)
getSystemService(Context.TELEPHONY_SERVICE);
return mTelephonyMgr.getLine1Number();
}
手机正在向我发送lambda:空字符串。
有谁知道如何做到这一点?我需要这个用于android Froyo(2.2
)及以上
答案 0 :(得分:2)
这确实是一个问题。没有一个解决方案永远有效。 它不存储在所有SIM卡上,也不能始终从运营商网络访问。
某些国家甚至可能需要进行物理地址验证。
电话号码分配的分配在网络上进行 - 并且可以在不更改SIM卡或设备的情况下进行更改(例如,这是从一个运营商转移到另一个运营商时支持移植的方式......)。
你最好的选择是询问用户,这可能听起来很奇怪..