概述
Android系统信息获取 之十一:获取IMEI,IMSI号
对于移动信息的获取本不想再写,只是在开发的过程中还是有同事来讨论,因此就单独再把几个重要的信息获取点给列出来,供查询使用。
IMEI号,IMSI号的知识点可参考:IMSI号和IMEI解释
Android系统中IMSI号和IMEI号的获取一样可以通过TelephonyManager类来获取,还有另外一种方式通过Settings.System的ANDROID_ID来获取,这里需要注意一下,Android系统里不少信息除了通过各种类获取之外还可以通过Android系统的数据库,文件(例如获取CPU信息的时候)来获取。
通过TelephonyManager类来获取IMSI,IMEI号:
public static TelephonyManager getTelephonyManager(Context context) {
// 获取telephony系统服务,用于取得SIM卡和网络相关信息
if (mTelephonyManager == null) {
mTelephonyManager = (TelephonyManager) context
.getSystemService(Context.TELEPHONY_SERVICE);
}
return mTelephonyManager;
}
/**
* 唯一的设备ID: GSM手机的 IMEI 和 CDMA手机的 MEID. Return null if device ID is not
* 取得手机IMEI
* available.
*/
public static String getDeviceId(Context context) {
mDeviceId = getTelephonyManager(context).getDeviceId();// String
return mDeviceId;
}
/**
* 取得IMEI SV
* 设备的软件版本号: 返回移动终端的软件版本,例如:GSM手机的IMEI/SV码。 例如:the IMEI/SV(software version)
* for GSM phones. Return null if the software version is not available.
*/
public static String getDeviceSoftwareVersion(Context context) {
mDeviceSoftwareVersion = getTelephonyManager(context).getDeviceSoftwareVersion();// String
return mDeviceSoftwareVersion;
}
/**
* 取得手机IMSI
* 返回用户唯一标识,比如GSM网络的IMSI编号 唯一的用户ID: 例如:IMSI(国际移动用户识别码) for a GSM phone.
* 需要权限:READ_PHONE_STATE
*/
public static String getSubscriberId(Context context) {
mSubscriberId = getTelephonyManager(context).getSubscriberId();// String
return mSubscriberId;
}
通过Settings.System的ANDROID_ID获取
private String getAndroidIMEI(Context context){
String androidIMEI = android.provider.Settings.System.getString(getContentResolver(context), android.provider.Settings.System.ANDROID_ID);
Log.d("ANDROID_ID", androidIMEI + " ");
return androidIMEI;
}
最后
以上就是轻松缘分为你收集整理的Android系统信息获取 之十一:获取IMEI,IMSI号的全部内容,希望文章能够帮你解决Android系统信息获取 之十一:获取IMEI,IMSI号所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复