Android 检测手机IMEI值

时间:2022-02-24 19:05:08

最近做项目的时候需要指定特定手机才能使用app,此时必须要根据每台手机特有的IMEI值进行判断。简单说一下IMEI值,IMEI值就是每台手机唯一拥有的序列号。大部分手机上可以在手机电话拨号界面输入*#06#来查看手机的IMEI值。

android提供了查询手机IMEI,下面一行代码就可得到IMEI值

String IMEI = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId();

得到当前手机的IMEI值之后可以根据当前手机IMEI值和指定的IMEI值是否相等,来加载不同的布局,如果相等则加载正常布局,若不相等,则加载另一个错误提示布局。具体代码如下:

protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
String imei = ((TelephonyManager) getSystemService(TELEPHONY_SERVICE)).getDeviceId();
if (!imei.equals("XXX")) { //检测手机IMEI值与指定IMEI值是否相等
setContentView(R.layout.activity_null);//加载空布局
AlertDialog.Builder dialog = new AlertDialog.Builder(WorkRecorder.this);
dialog.setMessage("该手机没有权限使用该app");
dialog.setPositiveButton("退出", new DialogInterface.OnClickListener() {
@Override
public void onClick(DialogInterface dialog, int which) {
finish();
}
});
dialog.show();
return;
}
setContentView(R.layout.activity_work_recorder);//加载正常布局
//下面写程序代码
}