Android 许可证验证用户流程实现

Android License verification user flow implementation

我已根据 Developers.android.com. 上提供的指南在我的付费应用程序中实施了许可证验证库 以下是用户流程:

  1. 用户 install/upgrade 应用
  2. 他们在应用程序启动(启动画面)时被要求获得联系人权限(最初是 GET_ACCOUNTS 权限以检查 Google 帐户是否存在于设备中)。
  3. 验证购买许可证。
  4. 如果成功,则用户可以使用该应用程序,否则会向他们显示许可证验证失败警报​​。

我的问题在第 2 步。Android 6.0 及更高版本用户实际上对我们正在访问他们的联系人感到困惑。

所以请建议我是否实施了正确的流程?

或者有什么更好的方法来处理这种情况?

或者有没有绕过第2步的方法

提前致谢

我现在有了这个工作流程,它在过去 3 个月的实时应用程序中运行良好,没有任何问题。

我已经通过修改LicenceVerification Open Source Library解决了第2步的问题。我已经在 LicenseValidator.java class

中实施了建议的修改
public void verify(PublicKey publicKey, int responseCode, String signedData, String signature) {
  -
}

在这个方法中,我为第一个 try.. catch() 块添加了额外的 catch 块

catch (Exception e){ 
     handleInvalidResponse();
     return;
}

这个 hack 解决了我的问题,不再请求 CONTACT 许可验证许可。