2011-05-19 116 views
3

我试图向所有从Mac App Store购买我的应用的用户授予许可,以便为他们提供更快的更新。 我在想什么是为应用程序的Mac App Store版本做一个更新,让用户从应用程序本身进行注册。但是我在解决如何测试应用程序是否真的来自Mac App Store而不是来自盗版源时遇到了问题。 有没有方法可以测试用户是否从AppStore购买了应用程序。 Apple不会发布此信息 - 就好像它会 - 我可以测试该用户电子邮件是否位于从AppStore下载应用程序的用户列表中。检查Mac App是否来自Mac App Store和Cocoa

预先感谢您的帮助, 波格丹Vladu

+0

你问是否有方法来计算给定的输入是否在未知集合中。没有。您是否可以使每个版本的下载内容略有不同给他们序列号?我怀疑苹果会让你。如果他们将所有东西都加上水印,他们肯定不会让你进入。 – bdares 2011-05-19 08:39:58

+0

我想在另一家商店发布我的应用程序 - 这会让我做出更快的更新 - 并且我想给那些已经从其他商店的应用程序版本的Mac App Store许可证购买应用程序的用户,所以他们还可以利用更快的更新,让他们知道如果他们选择从其他商店购买应用程序,他们将不再通过MacAppStore更新 – 2011-05-19 09:09:35

+0

这真的很不错。但这就像要求你排序一个列表而不告诉你什么是一半的值。没有你没有得到的信息,你就无法做到。 – bdares 2011-05-19 09:11:54

回答

3

您可以让应用程序的MAS版本将Apple发行的收据复制到应用程序支持文件夹中。

独立版本可能会在那里查找有效收据。如果有,它将表现得像完全许可的版本。如果没有,它将进入演示模式。

+0

这就是我在我的应用程序中所做的。我认为丹尼尔贾尔库特第一次在博客上介绍了这种方法:http://www.red-sweater.com/blog/1678/this-app-is-your-app – sbooth 2011-05-19 15:11:24

+0

这看起来完全像我需要的。谢谢! – 2011-05-21 07:37:35

1

如果你从这个程序付钱的DRM和obsfucation,去为它挣足够的钱。它可能会减慢海盗足以让它成为你的利润。

否则,你会将自己的时间和技能与所有对盗版应用程序感兴趣的人打交道。这是一场失败的战斗,除非你的应用程序真的不受欢迎,在这种情况下你又输了。

总之,没有确定的算法方法。代码晦涩难懂,但希望海盗们找不到“篡改检查”模块。