java翻译到mono C#实现系列(3) 获取手机设备信息(残缺,)
2013-08-05 23:25
609 查看
using System; using Android.App; using Android.Content; using Android.Runtime; using Android.Views; using Android.Widget; using Android.OS; using Android.Telephony;//需要引用这个命名空间 namespace GetPhoneInfodemo { [Activity(Label = "GetPhoneInfodemo", MainLauncher = true, Icon = "@drawable/icon")] public class Activity1 : Activity { protected override void OnCreate(Bundle bundle) { base.OnCreate(bundle); // Set our view from the "main" layout resource SetContentView(Resource.Layout.Main); // Get our button from the layout resource, // and attach an event to it TelephonyManager telphoneMgr = (TelephonyManager)GetSystemService(Context.TelephonyService); string Imei = telphoneMgr.DeviceId;//IMEI号.需要READ_PHONE_STATE权限 string PhoneType = telphoneMgr.PhoneType.ToString();//手机网络制式,例如GSM string str0 = telphoneMgr.NetworkType.ToString();//网络模式 "Hspa" string PhoneNum = telphoneMgr.Line1Number;//手机号 string SdkVersion = telphoneMgr.DeviceSoftwareVersion;//IMEI SV string ReleaseVersion = telphoneMgr.NeighboringCellInfo.ToString();//未知,安卓是获取周围基站的信息 getNeighboringCellInfo //需要ACCESS_COARSE_LOCATION权限 string str1 = telphoneMgr.CallState.ToString();//电话状态:CALL_STATE_IDLE=0无活动,CALL_STATE_RINGING=1响铃24,CALL_STATE_OFFHOOK=2摘机 CellLocation str2 = telphoneMgr.CellLocation;//电话定位 DataActivity str3 = telphoneMgr.DataActivity; TextView txtimei = FindViewById<TextView>(Resource.Id.imei); txtimei.Text = Imei; //button.Click += delegate { button.Text = string.Format("{0} clicks!", count++); }; } } }
调试android程序出现异常:
java.lang.SecurityException:requires READ_PHONE_STATE
根据异常提示,发现是手机的设备号获取失败
异常原因:AndroidMinifest.xml中没有添加READ_PHONE_STATE权限
解决法案:修改AndroidMinifest.xml,在<application/>之后添加权限设置
Androidmainfest.xml代码
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
总结:Security 英文翻译“安全,安全的”, 顾名思义SecurityException就是指安全异常,容易联想到是权限限
制导致的异常,手机软件对权限的限制是很多的,后面requires READ_PHONE_STATE一目了然就是要求READ_PHONE_STATE
这个权限
另外在虚拟机如果获取不到部分信息,请到真实机子调试.
相关文章推荐
- java翻译到mono C#实现系列(4) 利用CountDownTimer类实现倒计时功能 mono版
- java翻译到mono C#实现系列(2) mono实现GridView 横向滚动
- java翻译到mono C#实现系列(1) 重写返回键按下的事件
- Java代码实现获取安卓手机指定App的流量、CPU和内存占用信息
- android获取连接到手机热点上的设备的信息
- 通过ddmlib实现截图以及获取手机相关信息
- android获取当前手机设备信息工具类
- VC中实现用WMI获取设备信息
- 如何通过adb命令获取手机型号与设备信息
- java实现手机发送信息(实例) xzhou
- Android获取手机设备信息
- 【转】android 安卓APP获取手机设备信息和手机号码的代码示例
- 通过JAVA代码获取手机的一些基本信息(本机号码,SDK版本,系统版本,手机型号)
- C#实现获取IIS站点及虚拟目录信息的方法
- Android ADB工具-操作手机和获取手设备信息(四)
- Android 获取设备信息、获取手机信息
- 基于JAVA代码 获取手机基本信息(本机号码,SDK版本,系统版本,手机型号)
- 怎么搜索局域网内IPCamera设备的IP、Port等信息,用C#\UDP怎么实现?
- JavaScript获取移动设备型号的实现代码(JS获取手机型号和系统)
- Windows下USB磁盘开发系列三:枚举系统中U盘、并获取其设备信息