android获取手机信息以及服务商信息

本文介绍如何使用Android的TelephonyManager类来获取手机的IMEI、IMSI、手机号码及运营商信息,并提供了一段示例代码。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

通过android提供的TelephonyManager类来获取手机相关信息如下:

public void getPhoneInfo()
     {
    	 TelephonyManager telephonyManager=(TelephonyManager) CommonVariable.getContext().getSystemService(Context.TELEPHONY_SERVICE);
    	 //获取IMEI号码
    	 String imei = telephonyManager.getDeviceId();
    	 //获取手机号码,部分手机可以获取,不能获取的为空
    	 String phoneNumber = telephonyManager.getLine1Number();
    	 //获取IMSI号码
    	 String imsi = telephonyManager.getSubscriberId();
    	 // 手机型号 
    	 String mtype = android.os.Build.MODEL; 
    	 //获取运营商信息
    	 String providersName = getProvidersName(imsi);
     } 

 /** 
          * Role:Telecom service providers获取手机服务商信息 <BR> 
          * 需要加入权限<uses-permission 
          * android:name="android.permission.READ_PHONE_STATE"/> <BR> 
          * Date:2012-3-12 <BR> 
          * @author CODYY)peijiangping 
          */  
         public String getProvidersName(String imsi) {  
             String ProvidersName = null;   
             if(imsi == null)
        		 return ProvidersName;
             // IMSI号前面3位460是国家,紧接着后面2位00 02是中国移动,01是中国联通,03是中国电信。   
             System.out.println(imsi);  
             if (imsi.startsWith("46000") || imsi.startsWith("46002")) {  
                 ProvidersName = "中国移动";  
             } else if (imsi.startsWith("46001")) {  
                 ProvidersName = "中国联通";  
            } else if (imsi.startsWith("46003")) {  
                 ProvidersName = "中国电信";  
             }  
             return ProvidersName;  
         } 


需要权限:
需要加入权限<uses-permission 
          android:name="android.permission.READ_PHONE_STATE"/> 


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值