⑴ android开发如何获取手机imei号
TelephonyManager mTm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
String imei = mTm.getDeviceId();
权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
参考:
http://blog.csdn.net/hytfly/article/details/8552483
⑵ android 代码获取IMEI,IMSI都为空,怎么解决
Android获取IMSI和IMEI :
IMSI是一个唯一的数字,标识了GSM和UMTS 网络里的唯一一个用户.
它存储 在手机的SIM卡里,它会通过手机发送到网络上。
IMEI也是一串唯一的数字,标识了GSM 和UMTS网络里的三星 Galaxy I9100.。
它通常被打印在手机里电池下面的那一面,拨 *#06# 也能看到它。
代码:
这里是你在Android里读出 唯一的 IMSI-ID/IMEI-ID 的方法。
java:
StringmyIMSI=
android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMSI
);
//withinmyemulatoritreturns:310995000000000
StringmyIMEI=
android.os.SystemProperties.get(android.telephony.TelephonyProperties.PROPERTY_IMEI
);
//withinmyemulatoritreturns:000000000000000
手机号码不是所有的都能获取。只是有一部分可以拿到。这个是由于移动运营商没有把手
机号码的数据写入到sim卡中。sim卡只有唯一的编号,供网络与设备识别那就是imsi号码,手机的信号也可以说是通过这个号码在网络中传递的,并不是手机号码。
试想,你的sim丢失后,补办一张新的会换号码吗? —不会就是因为在你的手机号码对应的 imsi号在移动运营商中被修改成新sim卡的imsi号码。
这个就像是一个变量,当移动运营商为它赋值了,它自然就会有值。不赋值自然为空。
/** * 获得手机的一些标志符* *@paramc *@returnString 手机的类型 */
publicStringfetch_status(Contextc){
TelephonyManagertm=(TelephonyManager)c
.getSystemService(Context.TELEPHONY_SERVICE);//
Stringstr="";
StringIMSI=tm.getSubscriberId();
str+="DeviceId(IMEI)="+tm.getDeviceId()+"/n";
str+="DeviceSoftwareVersion="+tm.getDeviceSoftwareVersion()
+"/n";
str+="Line1Number="+tm.getLine1Number()+"/n";
return str;
}
⑶ android如何通过adb命令获取手机的IMEI
java获得android的imei号步骤:
1、权限添加:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
TelephonyManager telephonyManager = (TelephonyManager) this
.getSystemService(Context.TELEPHONY_SERVICE);
String IMEI = telephonyManager.getDeviceId();
2、adb命令获得:
adb shell mpsys iphonesubinfo
⑷ android怎么获取手机imei号
您可以通过手机设置的关于本机选项下查看手机IMEI码。
也可以通过拨号键盘输入*#06#获得。
⑸ android系统如何获取imei号码,获取手机型号和系统版本号
/** * **创建日期 2010-4-29 下午05:02:47 * */ package net.sunniwell.app; import android.app.Activity; import android.os.Bundle; import android.telephony.CellLocation; import android.telephony.PhoneStateListener; import android.telephony.TelephonyManager; public class TelManager extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TelephonyManager tm = (TelephonyManager) this.getSystemService(TELEPHONY_SERVICE); /* * 电话状态: * 1.tm.CALL_STATE_IDLE=0 无活动 * 2.tm.CALL_STATE_RINGING=1 响铃 * 3.tm.CALL_STATE_OFFHOOK=2 摘机 */ tm.getCallState();//int /* * 电话方位: * */ tm.getCellLocation();//CellLocation /* * 唯一的设备ID: * GSM手机的 IMEI 和 CDMA手机的 MEID. * Return null if device ID is not available. */ tm.getDeviceId();//String /* * 设备的软件版本号: * 例如:the IMEI/SV(software version) for GSM phones. * Return null if the software version is not available. */ tm.getDeviceSoftwareVersion();//String /* * 手机号: * GSM手机的 MSISDN. * Return null if it is unavailable. */ tm.getLine1Number();//String /* * 附近的电话的信息: * 类型:List * 需要权限:android.Manifest.permission#ACCESS_COARSE_UPDATES */ tm.getNeighboringCellInfo();//List /* * 获取ISO标准的国家码,即国际长途区号。 * 注意:仅当用户已在网络注册后有效。 */ tm.getNetworkOperatorName();//String /* * 当前使用的网络类型: * 例如: NETWORK_TYPE_UNKNOWN 网络类型未知 0 NETWORK_TYPE_GPRS GPRS网络 1 NETWORK_TYPE_EDGE EDGE网络 2 NETWORK_TYPE_UMTS UMTS网络 3 NETWORK_TYPE_HSDPA HSDPA网络 8 NETWORK_TYPE_HSUPA HSUPA网络 9 NETWORK_TYPE_HSPA HSPA网络 10 NETWORK_TYPE_CDMA CDMA网络,IS95A 或 IS95B. 4 NETWORK_TYPE_EVDO_0 EVDO网络, revision 0. 5 NETWORK_TYPE_EVDO_A EVDO网络, revision A. 6 NETWORK_TYPE_1xRTT 1xRTT网络 7 */ tm.getNetworkType();//int /* * 手机类型: * 例如: PHONE_TYPE_NONE 无信号 PHONE_TYPE_GSM GSM信号 PHONE_TYPE_CDMA CDMA信号 */ tm.getPhoneType();//int /* * Returns the ISO country code equivalent for the SIM provider's country code. * 获取ISO国家码,相当于提供SIM卡的国家码。 * */ tm.getSimCountryIso();//String /* * Returns the MCC+MNC (mobile country code + mobile network code) of the provider of the SIM. 5 or 6 decimal digits. * 获取SIM卡提供的移动国家码和移动网络码.5或6位的十进制数字. * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断). */ tm.getSimOperator();//String /* * 服务商名称: * 例如:中国移动、联通 * SIM卡的状态必须是 SIM_STATE_READY(使用getSimState()判断). */ tm.getSimOperatorName();//String /* * SIM卡的序列号: * 需要权限:READ_PHONE_STATE */ tm.getSimSerialNumber();//String /* * SIM的状态信息: * SIM_STATE_UNKNOWN 未知状态 0 SIM_STATE_ABSENT 没插卡 1 SIM_STATE_PIN_REQUIRED 锁定状态,需要用户的PIN码解锁 2 SIM_STATE_PUK_REQUIRED 锁定状态,需要用户的PUK码解锁 3 SIM_STATE_NETWORK_LOCKED 锁定状态,需要网络的PIN码解锁 4 SIM_STATE_READY 就绪状态 5 */ tm.getSimState();//int /* * 唯一的用户ID: * 例如:IMSI(国际移动用户识别码) for a GSM phone. * 需要权限:READ_PHONE_STATE */ tm.getSubscriberId();//String /* * 取得和语音邮件相关的标签,即为识别符 * 需要权限:READ_PHONE_STATE */ tm.getVoiceMailAlphaTag();//String /* * 获取语音邮件号码: * 需要权限:READ_PHONE_STATE */ tm.getVoiceMailNumber();//String /* * ICC卡是否存在 */ tm.hasIccCard();//boolean /* * 是否漫游: * (在GSM用途下) */ tm.isNetworkRoaming();// } }
⑹ 如何获取android设备的imei号
java获得android的imei号步骤:
1、权限添加:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
2、调用android的api
TelephonyManager telephonyManager = (TelephonyManager) context.getSystemService(Context.TELEPHONY_SERVICE);
String IMEI = telephonyManager.getDeviceId();
3、adb命令获得:
adb shell mpsys iphonesubinfo
4、任何手机都可以在拨打电话的界面输入*#06# 来查看IMEI。
⑺ 如何在android下用c语言获取imei号码
va获得android的imei号权限添加 TelephonyManager telephonyManager = (TelephonyManager) this .getSystemService(Context.TELEPHONY_SERVICE); String IMEI = telephonyManager.getDeviceId(); adb命令获得:adb shell mpsys iphonesubinfo有时候返回为空是因为,模块电源关闭了。重置后需要打开模块电源才能读出来查看机器的一些系统设置参数adb shell getprop
⑻ 安卓十如何让应用获得imei
可以在手机的设置里面看到权限管理,给这个应用可以读取imei的权限就可以。
⑼ android 获取imei
TelephonyManager mTm = (TelephonyManager) getSystemService(TELEPHONY_SERVICE);
String imei = mTm.getDeviceId();
权限:
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
⑽ android开发 在service中怎么获取手机的imei
那是因为你在一个静态函数中使用了this。你可能写的是这样的:
你把this代表的对象,用函数的入口参数来替换(即函数增加一个入口参数,函数中不能使用this)。
例如:
static void method(object a)
{
object xxxx = a.getSystemService(TELEPHONY_SERVICE);
}