所有Android设备上都可以使用IMEI吗? 它可以不被篡改吗?
这个问题在这里已经有了答案:
我一直在互联网上苦苦寻找同样问题的答案。 看起来真正独特的东西非常困难。
1)Android_ID返回NULL或随主要制造商'狗屎'2)telephonyManager.getDeviceId()返回null与没有SIM卡功能的设备。
您可以做的最好的方式是获取设备所在的IMEI号码(.getDeviceId()),如果设备不存在,则可以获得设备的ANDROID_ID。 您至少可以最大限度地减少损失,因为只有在没有SIM卡设备的设备上才能投入金钱。 相信我,这是一个很小的数字。
参考文献:此链接应该有所帮助
注意:太大而不能发表评论。
请参阅此链接:
http://android-developers.blogspot.in/2011/03/identifying-app-installations.html
有各种方法建议:
1:
public class Installation {
private static String sID = null;
private static final String INSTALLATION = "INSTALLATION";
public synchronized static String id(Context context) {
if (sID == null) {
File installation = new File(context.getFilesDir(), INSTALLATION);
try {
if (!installation.exists())
writeInstallationFile(installation);
sID = readInstallationFile(installation);
} catch (Exception e) {
throw new RuntimeException(e);
}
}
return sID;
}
private static String readInstallationFile(File installation) throws IOException {
RandomAccessFile f = new RandomAccessFile(installation, "r");
byte[] bytes = new byte[(int) f.length()];
f.readFully(bytes);
f.close();
return new String(bytes);
}
private static void writeInstallationFile(File installation) throws IOException {
FileOutputStream out = new FileOutputStream(installation);
String id = UUID.randomUUID().toString();
out.write(id.getBytes());
out.close();
}
}
我说使用,
ANDROID_ID,因为它对于较新的设备非常可靠地工作
链接地址: http://www.djcxy.com/p/24657.html上一篇: Is IMEI available on all Android devices? Can it not be tampered?
下一篇: Android: Android ID changes on App Update. Something Unique instead?