其他分享
首页 > 其他分享> > 为什么我总是从android-lvl获得相同的测试响应?

为什么我总是从android-lvl获得相同的测试响应?

作者:互联网

我刚在我的应用程序中实现了LVL.我首先在我的开发者帐户设置=>中设置了对“LICENSED”的测试响应.一切正常;我收到了这个答案.

当我将测试响应更改为“NOT_LICENSED”时,即使在我的开发者帐户中更改了值后两小时,我仍然会在我的应用中获得结果“LICENSED”.

不知道如何解决这个问题?

解决方法:

如您所知并已在一条评论中写道,ServerManagedPolicy有一个缓存.这意味着一旦您得到肯定的回复,只要它有效,就会采取此响应.
即使您已连接,应用程序也不会在上一次正面响应的有效期内联系许可服务器.缓存不仅适用于离线使用,还可以避免过多的网络查询耗时.

这是你应该做的:而不是ServerManagedPolicy

mChecker = new LicenseChecker(this,//
                new ServerManagedPolicy(this,
                new AESObfuscator(SALT,getPackageName(),
                deviceId)), //
                BASE64_PUBLIC_KEY // The public licensing key.
        );

使用StrictPolicy

mChecker = new LicenseChecker(this, new StrictPolicy(), BASE64_PUBLIC_KEY);

并尝试它是否有效.完成测试后,请将其更改回来,以便用户可以从ServerManagedPolicy的缓存中获益.

标签:android,android-lvl
来源: https://codeday.me/bug/20190626/1294536.html