我已经看到很多关于为 Android 应用程序创建有时限试用版本的线程,但似乎没有一个能够实现我的目的。 几天前,我推出了应用程序的付费版本,现在我想推出试用版,我不想从任何方面削弱它。所以我想对试用版有一个时间限制。我为其创建了不同的包名称。早些时候我使用 LVL,现在我也使用相同的,除了我创建了新的许可证库并更改了 setValidityTimestamp(extras.get("VT")); 到 setValidityTimestamp(String.valueOf(System.currentTimeMillis() + (5* MILLIS_PER_MINUTE)));在服务器管理策略中。
这样我就可以测试试用版是否可以工作 5 分钟,然后给我许可证错误。我将其发布到应用商店并下载,然后发现它仍然工作超过 5 分钟。现在我已经取消发布了。有人可以帮助我创建更好的限时应用程序,用户可以运行一周(比如说)。此外,他不应该能够卸载并重新安装它,然后再次永久使用它。我知道我是否可以将信息写入某个外部文件,但同样可以从 SD 卡中删除该文件,并且用户可以终身免费访问应用程序。
问候 潘卡杰
最佳答案
根据 LVL 当前的功能以及用户对普通手机的控制程度,如果没有服务器端组件,目前无法做到这一点。一旦您的应用程序被卸载,所有痕迹(除了,正如您所指出的,您可能写入 SD 卡的文件,这些文件是用户可见的)都将被删除,因此检查卸载/重新安装的唯一方法是生成一致的、设备特定的标识符,并与服务器组件进行检查,该组件将拒绝此重新安装或接受其作为新的计时试验。即使这也可能被专门的客户欺骗(取决于服务器端组件的行为),因此您需要设计您的软件,以便您的服务器端组件成为该过程的必要部分(即,它不仅仅是许可证检查,它实际上是应用程序功能的一部分)。
如果你想出了一些有效的方法,我很乐意听到,但我想说你运气不好。
关于android - 创建 Android 应用程序的有时限试用版,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10462720/