Search for
Login | Username Password Forgot? | Email: | Create Account
Non English | Popularity: 0 | Entries: 63 | Updated: 4h 42m ago | | Add to My Feeds

android TelephonyManager

android TelephonyManager


由于要使用的是ListActivity,所以layout中的ListView的id必须指定为“android:list”。

<?xml version="1.0" encoding="utf-8"?>
<ListView 
	android:layout_width="fill_parent"
	android:layout_height="fill_parent"
	xmlns:android="http://schemas.android.com/apk/res/android"
	android:id="@+id/android:list">
</ListView>

所以在主程序MobilePhoneInfoMain中需要使用getSystemService(TELEPHONY_SERVICE)取得TelephonyManager。

public class MobilePhoneInfoMain extends ListActivity {
    /** Called when the activity is first created. */
 
    private TelephonyManager telMgr;
    private List<String> items = new ArrayList<String>();
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        telMgr = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
        //手机号码
        items.add("手机号码:" + telMgr.getLine1Number());
 
        //电信网络国别
        items.add("电信网络国别:" + telMgr.getNetworkCountryIso());
 
        //电信公司代码
        items.add("电信公司代码:" + telMgr.getNetworkOperator());
 
        //电信公司名称
        items.add("电信公司名称:" + telMgr.getNetworkOperatorName());
 
        //通信类型
        if(telMgr.getPhoneType() == TelephonyManager.PHONE_TYPE_GSM){
        	items.add("通信类型:GSM");
        }else if(telMgr.getPhoneType() == TelephonyManager.PHONE_TYPE_CDMA){
        	items.add("通信类型:CDMA");
        }else{
        	items.add("通信类型:未知");
        }
 
        //网络类型
        switch(telMgr.getNetworkType()){
        	case TelephonyManager.NETWORK_TYPE_EDGE:
        		items.add("网络类型:EDGE");break;
        	case TelephonyManager.NETWORK_TYPE_GPRS:
        		items.add("网络类型:GPRS");break;
        }
 
        //是否漫游
        if(telMgr.isNetworkRoaming()){
        	items.add("漫游中");
        }else{
        	items.add("非漫游");
        }
 
        //手机IMEI
        items.add("IMEI:" + telMgr.getDeviceSoftwareVersion());
 
        //手机IMSI
        items.add("IMSI:" + telMgr.getSubscriberId());
 
        //内容解析
        ContentResolver cv = getContentResolver();
        try {
			if(android.provider.Settings.System.getInt(cv, android.provider.Settings.System.BLUETOOTH_ON) == 1){
				items.add("蓝牙已打开");
			}else{
				items.add("蓝牙未打开");
			}
		} catch (SettingNotFoundException e) {
			// TODO Auto-generated catch block
			e.printStackTrace();
		}
        ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, android.R.layout.simple_list_item_1, items);
        setListAdapter(adapter);
    }
}

当然,能够读取出来的信息还有很多,这里就不一一罗列了。最后,不要忘记在AndroidManifest.xml中需要加入权限:

<uses-permission android:name="android.permission.READ_PHONE_STATE"></uses-permission>

随机日志

  • 2010年07月27日 -- SAS分析、数据操纵和报表套件[光盘镜像]
    先了解一下SAS的大概:SAS 是一个模块化、集成化的大型应用软件系统。它由数十...
  • 2008年06月12日 -- 努力奋斗
    北大青鸟收费好贵好贵啊。。。。真的都不想上了。 有时觉得他们教的东西自己有书的话...
  • 2010年06月21日 -- SQL多表过滤查询
    快下班的时候不落天空给发过来一道SQL题,刚好也没事干,就试试看呗,自己人,做不...
  • 2008年07月19日 -- T-SQL编程
    1 变量的声明 局部变量前必须有‘@’前缀 全局变量前必须有两个‘@’前缀 例如...
  • 2008年08月1日 -- ASP.NET代码后置和代码内嵌
    1.代码后置 代码后置是微软的一项技术,也是我们编写ASP.NET常用的编码方式...
  • 2008年03月15日 -- Java开发工具包
    Java开发工具包JDK含有编译、调试和执行用java语言编写的源程序所需的软件...
  • 2010年02月24日 -- 终于回到北京了
    n:-gg 没赶上初七的软座,打电话给公司请了两天假,高价从黄牛手上买了初九无...
  • 2009年06月14日 -- 博客程序更新至Wordpress2.8
    周末刚好WordPress 2.8中文版发布了,在博客后台看到了更新提示。升级前...
  • 2008年10月15日 -- 汉字URL编码
    这是本次项目的最后一个问题了,把这个问题解决了,项目就彻底竣工了。先说说要达到的...
  • 2008年08月29日 -- 黑冰同学被判刑1年半
    西安大学生地震局网站发布虚假消息获刑1年半  西安雁塔区法院...



More from Neeke's Blog

博客下雪吧 11 Mar 2
十日杂谈 10 Dec 3
SAS数据集更新 10 Nov 3
SAS循环结构 10 Sep 9
拒绝鼠标手 10 Sep 1
Hello SAS 10 Sep 1
SAS语言构成 10 Sep 1

^ Back To Top