2

按照Apple 的文档,我已经开始了一个 Safari 应用程序扩展项目。

我有我的(空的)应用程序和最小的扩展。我已经归档了应用程序,并使用我的开发者 ID 对其进行了签名。当我将归档的应用程序复制到朋友的 Mac 上,运行它并启动 Safari 时,应用程序扩展程序出现在 Safari 首选项的“扩展程序”窗格中(带有父应用程序的图标),并且启用后运行良好。

但是,当我在我的 Mac(我开发它的地方)上运行该应用程序并启动 Safari 时,除非我在 Safari 的开发菜单中选中“允许未签名的异常”,否则该应用程序扩展不会显示在 Safari 的“扩展”首选项窗格中,如本文所述答案——当它出现时,它有一个通用的应用程序图标,而不是父应用程序的图标。

虽然我希望最终让应用程序和应用程序扩展可供其他人使用,但我主要是为自己制作。因此,我希望能够在每次启动 Safari 时不必检查“允许未签名的异常”的情况下使用它。

如何使应用程序扩展程序显示在我开发扩展程序的计算机上的 Safari 扩展程序首选项窗格中?

4

1 回答 1

2

我在我的用户库文件夹中找到了我的应用程序和应用程序扩展的调试版本:

~/Library/Developer/XCode/DerivedData/{APP_NAME_FOLLOWED_BY_LONG_STRING}/Build/Products/Debug

在删除此文件夹的内容、重新启动 Safari 并再次允许未签名的扩展程序后,我的应用程序扩展程序不再出现在 Safari 的“扩展程序”首选项中并带有通用图标。

(我是一个真正的 Xcode 新手,所以我不知道删除调试版本是否是我可以/应该通过 Xcode 做的事情。)

然后我再次归档我的应用程序并运行它,然后重新启动 Safari。现在,我的应用程序扩展程序显示在 Safari 的扩展程序首选项中,带有正确的图标和所有内容,并且在重新启动之间保持启用状态。

于 2018-04-09T20:07:32.883 回答