cocoa - 在 MAS 之外更新 Mac App Store 应用程序并检查收据

标签 cocoa licensing mac-app-store

我想知道如何构建以下场景: - 我有一个可以在 Mac App Store 购买的应用程序 - 由于此应用程序无法使用沙箱(很快我将强制执行),因此我将无法在 Mac App Store 中更新它。 - 我想继续向这些用户提供更新,但这将在 MAS 更新之外 - 如何检查应用程序是否已合法获取?

感谢您的帮助

最佳答案

我这样做是为了让 Mac App Store 客户能够轻松地测试从我的网站下载的应用程序的新版本,同时仍然执行许可。启动我的应用程序的 MAS 版本后,我将其收据复制到/Library/Application Support/MyAppName/中。我的应用程序的非 MAS 版本的 Beta 版本包含与 MAS 版本相同的收据验证代码。他们在应用程序支持文件夹中查找收据,并验证它,如果收据有效,则在许可模式下运行。

我认为 MAS 收据与用于购买/下载应用程序的机器绑定(bind),因此您的用户将无法在计算机之间转移收据。解决此问题的方法可能是向在至少一台计算机上成功验证 MAS 收据的用户颁发常规许可证。这里有作弊的机会,但我认为这与您使用的任何许可方案固有的弱点没有什么不同。

关于cocoa - 在 MAS 之外更新 Mac App Store 应用程序并检查收据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8680447/

相关文章:

objective-c - 以编程方式选择网络(以太网或 WiFi)

objective-c - NSCache:尝试访问缓存项时总是得到 "not key value coding-compliant"

cocoa - Core Data 和 NSArrayController 的行为非常奇怪

c++ - 如何获得真实的硬件MAC地址

java - Crystal 报表仅限于三个并发用户请求

objective-c - 为 transient 核心数据属性设置 "to-many"关系值依赖关系

java - 如何创建安全许可的 Java EE 应用程序?

cocoa - 在没有单独 Nib 的情况下更改 "lite mode app"的 OSX/Cocoa 应用程序菜单名称

macos - Mac App从Mac AppStore下载安装后直接神秘消失

cocoa - Mac App Store : Giving up 32 bit support in favor for ARC, 32 位版本的现有用户会看到更新消息吗?