正如许多消息来源在互联网上所述,您需要让您的应用程序Sandboxed能够在App Store中部署它。
此外,根据this,沙盒化时无法使用辅助功能api(AXUIElement.h)。
然而,一些应用似乎仍然使用这个API。其中一个应用程序是Cinch。在Cinch的安装过程中,您需要授予Cinch使用辅助功能API的权限,因此很明显他们正在使用此API。
使用以下命令从应用商店中检出二进制文件:
codesign --display --entitlements - /Applications/Cinch.app
该应用似乎没有沙盒:
Executable=/Applications/Cinch.app/Contents/MacOS/Cinch
(仅输出中的行)。
所以我的问题是,如何规避这一要求是可能的。您是否需要与Apple协商才能实现这一目标?有特殊规定吗? 你是否需要贿赂一名工作人员?或者我的终端命令是错误的?
答案 0 :(得分:3)
2011年,在需要沙盒之前,Irradiated已将Cinch提交至App Store,并且此后并未进行任何实质性更新。只要他们添加新的功能或功能,他们就需要对应用程序进行沙盒处理。
Apple于2012年2月写信给开发人员:
从2012年6月1日开始,如果Mac App Store上的现有应用程序没有沙盒,您仍可以提交错误修复更新,而无需对应用程序进行沙盒处理。此外,如果您遇到技术问题,导致您无法在6月1日之前对您的应用进行沙盒处理,请告知我们。
和2012年5月:
如果Mac App Store上的现有应用程序没有沙盒,您可能仍会在6月1日之后提交错误修复更新。
答案 1 :(得分:1)
App Store中的应用程序不会被沙盒化,这是非常令人惊讶的。
如果您没有开发竞争应用,也许您可以直接与他们联系。也许他们会告诉你他们是如何做到的。您可能会在更短的时间内得到答案(至少在我看来)没有多少开发人员会这样做。