系统Service TelephonyManager
来源:互联网 发布:厦门软件企业 编辑:程序博客网 时间:2024/04/30 04:28
/*** TelephonyManager 管理手机通话状态和网络状态的服务...* 使用分3步:* 1 Telephony对象,context方法getSystemService(TELEPHONY_SERVICE);* 2 对象实例方法,获取手机,sim卡网络信息.* 3 注册权限* <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> <uses-permission android:name="android.permission.READ_PHONE_STATE" />* */package com.example.tyxiong.myapplication;import android.app.Activity;import android.os.Bundle;import android.telephony.TelephonyManager;import android.widget.ListView;import android.widget.SimpleAdapter;import java.util.ArrayList;import java.util.HashMap;import java.util.Map;public class MainActivity extends Activity { ListView showView; // 声明代表状态名的数组 String[] statusNames; // 声明代表手机状态的集合 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); TelephonyManager tManager = (TelephonyManager) getSystemService(TELEPHONY_SERVICE); ArrayList<String> statusValues = new ArrayList<>(); // 获取各种状态名称的数组 statusNames = getResources().getStringArray(R.array.statusNames); // 获取代表SIM卡状态的数组 String[] simState = getResources() .getStringArray(R.array.simState); // 获取代表电话网络类型的数组 String[] phoneType = getResources().getStringArray( R.array.phoneType); // 获取设备编号 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.show); ArrayList<Map<String, String>> status = new ArrayList<>(); // 遍历statusValues集合,将statusNames、statusValues // 的数据封装到List<Map<String , String>>集合中 for (int i = 0; i < statusValues.size(); i++) { HashMap<String, String> map = new HashMap<>(); map.put("name", statusNames[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); }}
0 0
- 系统Service TelephonyManager
- Service之TelephonyManager使用
- TelephonyManager
- TelephonyManager
- TelephonyManager
- TelephonyManager
- TelephonyManager
- [android基础知识] 之四:TelephonyManager service的使用实例
- Android系统信息获取 之九:TelephonyManager类
- Android提供的系统服务之--TelephonyManager(电话管理器)
- Android系统信息获取 之九:TelephonyManager类
- Android的Service与BroadcastReceiver之三 TelephonyManager、SmsManager、AudioManager、Vibrator、AlarmManager
- android TelephonyManager
- android TelephonyManager
- android TelephonyManager
- android TelephonyManager
- TelephonyManager Android
- android TelephonyManager
- VR学习第四节:VR+直播 VR+电影
- 验证码识别程序
- node js学习(1)
- centos6.5 安装mysql5.7.19
- hdu4897
- 系统Service TelephonyManager
- 通过一个代码简要解析函数的定义与调用
- JZOJ4866【NOIP2016提高A组集训第8场11.5】禅与园林艺术
- 远程自动代答题
- 软件都是用什么语言写的
- javascript遍历节点时打印空白节点怎么办?
- rabbitmq消息队列php实际应用
- 系统服务SmsManager
- 全等