如何获得所有者/ SIM号码和网络模式

时间:2011-05-11 10:48:27

标签: android

我想获取当前在手机中的SIM号码,即所有者号码。 和网络模式无论是GSM还是CDMA。

我在网上搜索并尝试通过getLine1Number()进行此操作; 但没有给予任何东西

请帮助我如何做到这一点。

4 个答案:

答案 0 :(得分:7)

获取你的SIM卡号码,网络你可以这样做:

TelephonyManager tm = (TelephonyManager) this.getSystemService(Context.TELEPHONY_SERVICE);

    ConnectivityManager cm = (ConnectivityManager) this.getSystemService(Context.CONNECTIVITY_SERVICE);
        if(cm.getActiveNetworkInfo().getTypeName().equals("MOBILE"))
            network = "cellnetwork/3G";
        else if(cm.getActiveNetworkInfo().getTypeName().equals("WIFI"))
            network = "wifi";
        else 
            network ="na";

    uphone = tm.getLine1Number();

希望它能够:)

我试过了,它对我有用

答案 1 :(得分:3)

您可以使用电话号码

// Get the phone number from the telephony manager, and display it
TelephonyManager info = (TelephonyManager)getApplicationContext().getSystemService(Context.TELEPHONY_SERVICE);
String phoneNumber = info.getLine1Number();

有关网络模式,请参阅TelephonyManager

答案 2 :(得分:0)

这个问题多次被问过。

请参阅How to get the mobile number of current sim card in real device?

而且,我必须补充说,获取电话号码取决于运营商是否在SIM卡上提供。

答案 3 :(得分:0)

要获取电话号码,请尝试使用TelephonyManager。

如果这不起作用,您可以通过AccountManager获取此信息。其中一个帐户就是数字。

请参阅此帖子中的源详细信息实现: TelephonyManager.getLine1Number() failing?