首页 > 解决方案 > 在 Mac App Store 的应用程序中,我只需要系统 LibreOffice 上的一项特定功能。这是否违反了商店的规则?

问题描述

在 Mac App Store 的应用程序中,我只需要系统 LibreOffice 上的一项特定功能。没有它,应用程序的其余部分也能正常工作。这是否违反了商店的规则?我知道提交过程是不可预测的,但也许有开发人员遇到过这个精确的问题。非常感谢。

标签: macoscocoastorelibreoffice

解决方案


Mac AppStore 最重要的规则是您的应用程序必须经过沙盒处理(https://developer.apple.com/app-store/review/guidelines/#hardware-compatibility第 2.4.5 节第 (i) 部分)。沙盒应用程序只能访问它自己的文件,不能读取它“气泡”之外的任何内容。这意味着它只有在它是应用程序包的一部分时才能使用 LibreOffice。

简而言之:您的应用程序必须包含 LibreOffice。我不熟悉 LibreOffice 的许可,所以我不确定它是否可以包含在任何应用程序中。也许如果您只需要其中的一个工具,您可以将它添加到您的应用程序包中,并且会被接受。

另一种解决方案应该是在需要时要求用户授予对 LibreOffice 目录的访问权限——但这并不是真正的用户友好,因为您的应用程序每次执行时都需要询问。在用户同意的情况下,沙盒应用程序可以访问其沙盒之外的目录。这意味着当它打开一个 OpenFile 对话框并且用户选择并单击 LibreOffice 目录上的“打开”时,您的应用程序将暂时获得访问权限,直到它运行为止。

最后一个解决方案:使用临时异常(https://developer.apple.com/library/archive/documentation/Miscellaneous/Reference/EntitlementKeyReference/Chapters/AppSandboxTemporaryExceptionEntitlements.html#//apple_ref/doc/uid/TP40011195-CH5-SW7 ) 用于访问预定义的 LibreOffice 路径,但这些权利是临时的,这是有充分理由的。您需要解释为什么需要例外,并且不能保证 Apple 会接受。


推荐阅读