2016-11-22 70 views
0

我想在android移动应用程序中创建设备特定的登录,以便为一个移动用户实现一个许可证(限制1个设备的安装)。Android独特的安装和许可证

我用Android的ID但它重置 .MAC地址和IMEI在更高版本的Android版本之后不可工厂改变。 UUID无法存储到专用存储中,因为它可能会被篡改为有根设备。

如何创建特定于设备的登录信息,并且如果我想使用唯一的密钥来使用相同的密钥?

+1

你不能,至少不可靠。有一个很好的理由可以说,在出厂重置之后,它确实是一种新设备。另外,你可能想重新考虑你的方法。 Android模型是,应用程序授权给用户,而不是设备。你是否真的想告诉你的用户,如果他们不得不更换他们的设备,他们不再有应用程序的许可证? –

回答

0

Google Play提供了限制设备的方法:使用许可证验证库和implement a DeviceLimiter。我发现the interface它有一些文档:

来自服务器的许可响应包含独特于 的<应用,用户>一对用户标识符。显影剂可以与一些设备标识符(生成的随机数 沿着该标识符 发送给自己的服务器和每个应用程序的安装存储一次, {@link android.telephony.TelephonyManager#getDeviceId getDeviceId},{ @link android.provider .Settings.Secure#ANDROID_ID ANDROID_ID}等)。 用于识别设备的来源越多,攻击者就越难以欺骗。