在Android上修改读取IMEI码的方法

本文介绍如何为非移动设备自定义IMEI码,并通过修改Android系统的TelephonyManager类来实现第三方应用对该IMEI码的读取。具体操作包括在驱动中写入IMEI码并调整Java代码以读取这一属性。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

我们知道,如果是移动设备,厂家都提供了IMEI码写入及读出的方法。但由于我们的是非移动设备,可是我们也需要写入IMEI码,供第三方的软件读取,如正版地图等。我们找到frameworks/base/telephony/java/android/telephony/TelephonyManager.java这个文件,通过添加代码,让第三方的软件读取我们自定义的IMEI码即可。

+import java.io.BufferedReader;
+import java.io.InputStreamReader;
public String getDeviceId() {
String deviceId = null;
try {
deviceId = getSubscriberInfo().getDeviceId();
} catch (RemoteException ex) {
//return null;
} catch (NullPointerException ex) {
//return null;
}
if (deviceId == null) {
deviceId = “012345678912345”;
}
try {
+Process process =Runtime.getRuntime().exec(“getprop xxx.xxx.imei”);
+InputStreamReader ir = new InputStreamReader(process.getInputStream());
+BufferedReader input = new BufferedReader(ir);
+deviceId=input.readLine();
}catch (IOException e){
}
return deviceId;
}

此时,我们只需在驱动中,将IMEI码写入xxx.xxx.imei这个属性即可。

评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值