我正在制作一个应用程序。它有免费试用版和高级版。免费版本作为高级版运行 7 天,之后它将提示用户购买高级版并退出。为此,我想出了一些想法,例如:
1)唯一标识设备,并将该唯一 ID 和日期发送到服务器。并在启动时检查此设备的应用程序是否超过 7 天(如果是这样)阻止它。当用户卸载应用并在注册到服务器后再次安装时,应用将被阻止。我已经阅读了一些唯一识别设备的方法。但正如此链接所表明的那样,它们都不可靠,并且不适用于每个设备和操作系统版本。
2)我可以将一个文件写入SD卡,指示应用程序安装,并在首次运行时检查该特定文件以检测重新安装。但是该文件可以很容易地被用户删除并重新安装应用程序,从而获得另一个 7 天的试用期,这是不可接受的。
有没有办法实现我的目标?
这些事情是可以做到的,但是,我鼓励你再想一想。 您提出的建议对用户不利,对用户不利通常意味着应用销量下降。
该应用程序每次启动时都必须与您的服务器进行检查。 因此,如果我没有数据连接或您的服务器出现故障,我无法使用它? 就算我付了钱?
无论你做什么,它都可以被击败,尤其是在使用日期限制的东西时。
我建议您考虑为免费版本中没有的高级版本增加价值,这将鼓励人们购买。 或者用广告支持免费的,很多人很乐意支付合理的金额来摆脱。 我建议不要发布以某种方式残缺的免费版本,而是让您的付费版本对用户有价值。
我的建议是——
试用版 -
高级版 -
如果用户更改设备时间不会妨碍此逻辑,它将适用于所有情况。