为什么我可以 运行 我在其他计算机上签名的 Safari 应用程序扩展,而不是我开发它的那台计算机?
Why can I run my signed Safari App Extension on other computers, but not the one I developed it on?
我已经开始了一个 Safari 应用程序扩展项目,紧随 Apple’s documentation。
我有我的(空)应用程序和我的最小扩展。我已经存档了该应用程序,并使用我的开发者 ID 对其进行了签名。当我将存档的应用程序复制到朋友的 Mac、运行 并启动 Safari 时,应用程序扩展显示在 Safari 偏好设置的扩展面板中(带有父应用程序的图标),并且在启用时,工作正常。
但是,当我 运行 我 Mac(我开发它的地方)上的应用程序并启动 Safari 时,应用程序扩展不会显示在 Safari 的扩展首选项窗格中,除非我选中“ Safari 开发菜单中的“允许无符号异常”,如 中所述 - 当它出现时,它有一个通用应用程序图标,而不是父应用程序的图标。
虽然我希望最终可以让其他人可以使用该应用程序和应用程序扩展,但我主要是为我自己做的。因此,我希望能够在每次启动 Safari 时不必选中“允许未签名的异常”来使用它。
如何让应用程序扩展显示在我开发扩展的计算机上的 Safari 扩展首选项面板中?
我在我的用户库文件夹中找到了我的应用程序和应用程序扩展的调试版本:
~/Library/Developer/XCode/DerivedData/{APP_NAME_FOLLOWED_BY_LONG_STRING}/Build/Products/Debug
删除此文件夹的内容后,重新启动 Safari,并再次允许未签名的扩展,我的应用程序扩展不再以通用图标出现在 Safari 的扩展偏好设置中。
(我是一个真正的 Xcode 新手,所以我不知道删除调试版本是否是我 can/should 通过 Xcode 做的事情。)
然后我再次存档我的应用程序并 运行 它,然后重新启动 Safari。现在,我的应用扩展显示在 Safari 的扩展首选项中,带有适当的图标和所有内容,并且在重新启动之间保持启用状态。
我已经开始了一个 Safari 应用程序扩展项目,紧随 Apple’s documentation。
我有我的(空)应用程序和我的最小扩展。我已经存档了该应用程序,并使用我的开发者 ID 对其进行了签名。当我将存档的应用程序复制到朋友的 Mac、运行 并启动 Safari 时,应用程序扩展显示在 Safari 偏好设置的扩展面板中(带有父应用程序的图标),并且在启用时,工作正常。
但是,当我 运行 我 Mac(我开发它的地方)上的应用程序并启动 Safari 时,应用程序扩展不会显示在 Safari 的扩展首选项窗格中,除非我选中“ Safari 开发菜单中的“允许无符号异常”,如
虽然我希望最终可以让其他人可以使用该应用程序和应用程序扩展,但我主要是为我自己做的。因此,我希望能够在每次启动 Safari 时不必选中“允许未签名的异常”来使用它。
如何让应用程序扩展显示在我开发扩展的计算机上的 Safari 扩展首选项面板中?
我在我的用户库文件夹中找到了我的应用程序和应用程序扩展的调试版本:
~/Library/Developer/XCode/DerivedData/{APP_NAME_FOLLOWED_BY_LONG_STRING}/Build/Products/Debug
删除此文件夹的内容后,重新启动 Safari,并再次允许未签名的扩展,我的应用程序扩展不再以通用图标出现在 Safari 的扩展偏好设置中。
(我是一个真正的 Xcode 新手,所以我不知道删除调试版本是否是我 can/should 通过 Xcode 做的事情。)
然后我再次存档我的应用程序并 运行 它,然后重新启动 Safari。现在,我的应用扩展显示在 Safari 的扩展首选项中,带有适当的图标和所有内容,并且在重新启动之间保持启用状态。