我正在与一些联盟营销公司合作,我需要通过它们推广我的Android应用程序,但为此我需要检查我的应用程序的安装是否是唯一的。我需要为每次安装提供一些金额,为了正确地做到这一点,我需要确定安装是否是唯一的,如果它是唯一的,那么只发放钱,否则不会。
我做了什么:我使用ANDROID_ID来检查安装是否是唯一的,但我发现它不是唯一的,它会随着设备的每个系统升级/ root而改变,所以我将无法如果某人已植根他的设备并再次安装我的应用程序,则确定唯一安装。
我也检查了IMEI的事情,但是有些人可能会使用平板电脑等安装应用程序,有些情况下没有IMEI,请refer
我已经看到这适用于一些应用程序,如Flipkart。有什么想法吗?
答案 0 :(得分:1)
请参阅此链接:
http://android-developers.blogspot.in/2011/03/identifying-app-installations.html
建议采用各种方法:
1:
{"com.techm.kpn.servicecatalog.common.vo.xsd.Characteristic@61a86b":["C","C++","Java"],"com.techm.kpn.servicecatalog.common.vo.xsd.Characteristic@1780a05":["FreeCharge","Instagram","SnapChat","Twitter","Whatsapp"]}
我说使用,
ANDROID_ID,因为它对新设备非常可靠
答案 1 :(得分:1)
我一直在网上苦苦寻找同样问题的答案。看起来真正独特的东西非常困难。
1)Android_ID返回NULL或随机shit'与主要制造商` 2)telephonyManager.getDeviceId()返回null,设备没有SIM卡功能。
您可以做的最好的事情是获取可用设备的IMEI号(.getDeviceId())和设备的ANDROID_ID。您至少可以通过仅为没有SIM卡设备的设备分配资金来最小化您的损失。相信我,这是一个非常小的数字。
参考文献:这link应该有所帮助。
注意:发表评论太大了。