【发布时间】:2014-02-07 06:12:38
【问题描述】:
我们正在尝试使用某种优惠券作为奖励,只要在设备上完成新安装,就可以在实体店兑换该优惠券。我们对此进行了一些试验,并验证它是基于 IMEI 和 IMSI 的新设备。但我们发现人们在一些模拟器上这样做,这些 ID 可以被操纵并模仿新设备。如何避免这种情况?
我们目前是这样使用的
TelephonyManager m_telephonyManager = (TelephonyManager) context.getSystemService(serviceName);
String IMEI, IMSI;
IMEI = m_telephonyManager.getDeviceId();
IMSI = m_telephonyManager.getSubscriberId();
return IMEI + ":" + IMSI;
我确信有一种方法,因为驱动安装的广告网络正确地为每个设备分配一次。
【问题讨论】:
-
IDs can be manipulated- 即使您使用 IMEI 的代码也可以被操纵,黑客可以更改它以从外部文件加载 ID。 -
广告网络也有连接的 IP 和其他可以跟踪的因素。甚至他们也会有一些误报。
-
在How can I detect when an Android application is running in the emulator? 和How to find out from code if my Android app runs on emulator or real device? 上查看各种答案。如果这些解决方案都不起作用,请告诉我们,以防您正在寻找不同的东西:)
标签: android