利用电话管理器TelephonyManager获取网络和SIM卡信息
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.telephony.TelephonyManager;
import android.view.Menu;
import android.widget.ListView;
import android.widget.SimpleAdapter;
public class MainActivity extends Activity {
ListView showView;
//声明代表状态名的数组
String[] statusName;
//声明代表手机状态的集合
ArrayList<String> statusValues = new ArrayList<String>();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//获取系统的TelephonyManager对象
TelephonyManager tManager = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
//获取各种状态名称的数组
statusName = getResources().getStringArray(android.R.array.statusNames);
//获取代表SIM卡状态的数组
String[] simState = getResources().getStringArray(android.R.array.simState);
//获取代表电话网络类型的数组
String[] phoneType = getResources().getStringArray(android.R.array.phoneTypes);
//获取设备编号
statusValues.add(tManager.getDeviceId());
//获取系统平台的版本
statusValues.add(tManager.getDeviceSoftwareVersion() != null
? tManager.getDeviceSoftwareVersion() : "未知");
//获取网络运营商代号
statusValues.add(tManager.getNetworkOperator());
//获取网络运营商名称
statusValues.add(tManager.getNetworkOperatorName());
//获取手机网络类型
statusValues.add(phoneType[tManager.getPhoneType()]);
//获取设备所在位置
statusValues.add(tManager.getCellLocation() != null ?
tManager.getCellLocation().toString() : "未知");
//获取SIM卡的国别
statusValues.add(tManager.getSimCountryIso());
//获取SIM卡序列号
statusValues.add(tManager.getSimSerialNumber());
//获取SIM卡状态
statusValues.add(simState[tManager.getSimState()]);
//获取ListView对象
showView = (ListView) findViewById(R.id.showView);
ArrayList<Map<String, String>> status =
new ArrayList<Map<String,String>>();
//遍历statusValues集合,将statusNames、statusValues的
//数据封装到List<Map<String,String>>集合中
for(int i =0 ; i <statusValues.size() ; i++){
HashMap<String, String> map = new HashMap<String, String>();
map.put("name", statusName[i]);
map.put("value", statusValues.get(i));
status.add(map);
}
//使用SimpleAdapter封装List数据
SimpleAdapter adapter = new SimpleAdapter(this, status,
R.layout.line, new String[]{"name","value"},
new int[]{R.id.name,R.id.value});
//为ListView设置Adapter
showView.setAdapter(adapter);
}
}
利用电话管理器TelephonyManager获取网络和SIM卡信息的更多相关文章
- Android菜鸟的成长笔记(23)——获取网络和SIM卡信息
TelephonyManager是一个管理手机通话状态.电话网络信息的服务类,该类提供了大量的getXxx()方法来获取电话网络的相关信息.这些信息包括设备编号.软件版本.网络运营商代号.网络运营商名 ...
- Android TelephonyManager电话管理器
今天介绍一下Android的电话管理器--TelephonyManager,TelephonyManager管理手机通话状态.电话网络信息的服务类,获取TelephonyManager: Teleph ...
- Android提供的系统服务之--TelephonyManager(电话管理器)
Android提供的系统服务之--TelephonyManager(电话管理器) 转载请注明出处--coder-pig TelephonyManager的作用: 用于管理手机通话状态,获取电话信息(设 ...
- android学习笔记57——电话管理器TelephoneyManager
电话管理器TelephoneyManager
- 已禁用对分布式事务管理器(MSDTC)的网络访问。请使用组件服务管理工具启用 DTC 以便在 MSDTC 安全配置中进行网络访问。
今天写ASP.NET程序,在网页后台的c#代码里写了个事务,事务内部对一张表进行批量插入,对另外一张表进行查询与批量插入. 结果第二张表查询后foreach迭代操作时报错:已禁用对分布式事务管理器(M ...
- python中利用上下文管理器来实现mysql数据库的封装
from pymysql import connect class DB(object): def __init__(self, password, database): # 1.连接数据库 self ...
- Android开发之获取手机SIM卡信息
TelephonyManager是一个管理手机通话状态.电话网络信息的服务类.该类提供了大量的getXxx(),方法获取电话网络的相关信息. TelephonyManager类概述: 可用于訪问有关设 ...
- iphone获取sim卡信息
/* iphone获取sim卡信息 1.加入一个Framework(CoreTelephony.framework). 2.引入头文件 #import <CoreTelephony/CTTele ...
- ios开发获取SIM卡信息
.加入一个Framework(CoreTelephony.framework). .引入头文件 #import<CoreTelephony/CoreTelephonyDefines.h> ...
随机推荐
- E2 2014.6.3 更新日志
增加功能 增加支持中关村获取商品信息 增加个人业绩查询功能 增加赠送和获赠查询功能 增加商品历程分析报表,资金历程分析报表,科目明细分析报表, 销售分析报表 增加服务维修明细表查询报表 完善功能 固定 ...
- ssh免密码登陆及其原理
ssh 无密码登录要使用公钥与私钥.linux下可以用用ssh-keygen生成公钥/私钥对,下面我以CentOS为例. 有机器A(192.168.1.155),B(192.168.1.181).现想 ...
- Java编程思想学习笔记_6(并发)
一.从任务中产生返回值,Callable接口的使用 Callable是一种具有泛型类型参数的泛型,它的类型参数表示的是从方法call返回的值,而且必须使Executor.submit来去调用它.sub ...
- DOS中文乱码解决
在中文Windows系统中,如果一个文本文件是UTF-8编码的,那么在CMD.exe命令行窗口(所谓的DOS窗口)中不能正确显示文件中的内容.在默认情况下,命令行窗口中使用的代码页是中文或者美国的,即 ...
- Boostrap学习心得
进入新公司,前端用到各种页面元素几乎都是bootStrap框架里的,下面介绍下某些页面控件怎么运用,作为知识点备份,提供有需要人观看: 首先下载bootstrap,地址http://www.bootc ...
- Lucene 基础理论 (zhuan)
http://www.blogjava.net/hoojo/archive/2012/09/06/387140.html**************************************** ...
- JMX 简介 和 实例
What is JMX? 10 mins Quick Start JMX Tutorial 这篇文章作为入门,非常清楚
- css 颜色渐变
.top_nav { width: 100%; height: 29px; /* 如果浏览器不支持渐变,使用图像作为背景 */ background: u ...
- 各种element/format 在manage display 下的选项
long text = > plain text, summary and trimmed, trimmed,default, hiddenentity refernece => enti ...
- Oracle session inactive状态临时表数据未清空问题
问题描述:Oracle数据库,java代码使用某数据库实例,获取connection并在使用结束关闭,而session未销毁,而是状态变为inactive从而导致临时表数据未清空. Oracle临时表 ...