android - 如何在 Android 2.2 中获取我的电话号码

标签 android phone-number sim-card

我在 Android 2.2 中编写应用程序。 我试图在 Android 中获取我的电话号码,但无法... 如下所示,这是我获取电话号码的代码:(应用程序设备 - SamSung Galaxy Plus)

public static String getMyPhoneNumber(Context aContext){
    TelephonyManager mTelephonyMgr;
    mTelephonyMgr = (TelephonyManager) aContext
            .getSystemService(Context.TELEPHONY_SERVICE);
    return mTelephonyMgr.getLine1Number();
}

String phone = getMyPhoneNumber(getApplicationContext());// return "" in here

我在 Androidmanifest.xml 中添加了“android.permission.READ_PHONE_STATE” 但是当我运行应用程序时,手机是空的...

我不知道为什么,虽然我得到了“getSimSerialNumber(), getSimOperatorName(),getSimOperator(),...”是可以的!

方法“getLine1Number()”总是返回“”值。 如果你知道,请帮助我!

最佳答案

检查您的电话号码是否在设置->关于电话->状态->电话号码中可见,否则您可能无法获得它。

它不会显示您的电话号码,直到它被写在您的移动 SIM 卡上,所以请尝试更换 SIM 卡,这样当您更换 SIM 卡时,如果电话号码写在那里,它会显示电话号码。

关于android - 如何在 Android 2.2 中获取我的电话号码,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8240411/

相关文章:

java - Android - 更改了 java 版本,现在改回应用程序无法运行

android - 无法启动虚拟设备详细信息: failed to create framebuffer image (error: 15)

java - 无法在加载场景之前附加文本。安卓和引擎

android - 我可以限制 edittext 小部件只接受电话号码吗?

javascript - Xpages 电话号码

java - 无法从 SIM 卡中删除联系人

java - Android异步任务的同步策略

html - 微数据中的多个和重复的电话号码

Android MNC API 差异 : Configuration. mnc/TelephonyManager.getSimOperator()

android - 如何在 Android 中将短信添加到模拟内存中?