【发布时间】:2019-01-25 02:00:17
【问题描述】:
根据Mac App Store Review Guidelines:
2.4.5 通过 Mac App Store 分发的应用有一些额外要求需要牢记:
(i) 它们必须经过适当的沙盒处理,并遵循 macOS 文件系统文档。他们还应该只使用适当的 macOS API 来修改其他应用程序存储的用户数据(例如书签、地址簿或日历条目)。
...
(iv) 他们不得下载或安装独立应用、kext、附加代码或资源来添加功能或显着更改我们在审核过程中看到的应用。
(v) 他们不得请求升级到 root 权限或使用 setuid 属性。
沙盒已经排除了AuthorizationCreate()等API的使用,无论如何,第(v)项很清楚。
当然,像 Parallels (MAS link) 这样的应用程序肯定无法在不诉诸特权升级的情况下进行编码。事实上,常规(非 MAS)Parallels 应用程序至少安装了 3 个 kext,其中一个是虚拟机管理程序,如果没有这些,我相信 Parallels 绝对没用。所以他们显然违反了这些规则。
如果开发人员希望编写一个像 Parallels 一样需要提权并且没有它完全无用的应用程序,开发人员将如何绕过这些限制?还是只是一个足够大的问题,苹果会在审查过程中对此视而不见?您可以向 Apple 申请例外吗?
【问题讨论】:
-
我们don't do questions about App Store policy;你能改写它以专注于技术(即代码)方面吗?
标签: macos mac-app-store