我有兴趣制作一个应用程序的试用版,我正在通过Mac App Store分发。这样做的最安全的方式是什么?简单地将第一次运行日期写入用户默认值似乎有点容易规避。
最好是限制试用版的功能,而不是限制时间——你可以在试用版的代码中去掉的功能,然而你不能去掉"剩下的时间是永恒的"。你可以尝试人为地让你的应用在一段时间后停止工作,但请放心,有人想要找到绕过这个限制的方法。
如果你死死想让它基于时间试验,但是,在一个不明显的(例如基本加密)格式中存储一个时间戳,并检查它。是的,它会被一些有决心的人绕过,但是不值得你花时间去阻止它。
只要做一些"足够好"的东西来鼓励大多数诚实的用户为应用付费,而忽略硬核逆向工程师;他们只是市场中的一小部分人,无论你做什么,他们都不会为你的应用付费(除非如果你一开始没有锁定应用,他们可能会付费,这是一个原则问题——他们中的一些人就是这么善变的)。