Safari Extension Companion 始终为空
Safari Extension Companion is always null
我正在为我的本地 Mac 应用程序开发一个 Safari 扩展,我想使用 SafariExtension Companion 在它们之间进行通信。
但是,在我的 Global.html 扩展中,每当我尝试获取 safari.extension.companion 时,它始终为空。我设置的扩展名有误吗?
另外,按照教程,我可以使用safari.extension.addEventListener来监听本地app的消息,但是,当我调试扩展时,它提示我safari.extension.addEventListener是未定义的,这是为什么?
答:safari.application.addEventListener是正确的,苹果写错文档了
我确实在 Extension Builder 中设置了确切的 Companion Bundle 标识符,作为我在 Xcode 中根据指南为 safari companion 设置的标识符。还有什么我想念的吗?请帮忙!!!
Safari 扩展伴侣是一种 MacOS X 应用程序扩展。这些作为应用程序包的一部分提供。安装应用程序时(捆绑包复制到应用程序),Safari 会选择扩展。
首先,您需要一个目标类型为 "Cocoa application" 的 Xcode 项目("Command line tool" 不行)。然后你需要创建一个"Safari Extension Companion"类型的目标,你有机会在创建它的时候指定主应用程序。
当您构建和归档应用程序并导出归档文件时,您可以选择将扩展程序添加到应用程序包中。然后安装应用程序包。
确保扩展的包 ID 与 Safari Extension Builder 中的设置相匹配。此外,请确保应用程序和 Safari 扩展都已签名,并且密钥具有匹配的开发者 ID。对于 MacOS X 上的证书类型,选择 "Developer ID" - 首先在请求时,然后在从构建存档导出包时选择。
编辑:当本机伴侣崩溃时,Safari 会悄悄地禁用它。如果您删除并重新安装应用程序包,并重新启动 Safari,它会再次爱上这个伴侣。
我正在为我的本地 Mac 应用程序开发一个 Safari 扩展,我想使用 SafariExtension Companion 在它们之间进行通信。
但是,在我的 Global.html 扩展中,每当我尝试获取 safari.extension.companion 时,它始终为空。我设置的扩展名有误吗?
另外,按照教程,我可以使用safari.extension.addEventListener来监听本地app的消息,但是,当我调试扩展时,它提示我safari.extension.addEventListener是未定义的,这是为什么?
答:safari.application.addEventListener是正确的,苹果写错文档了
我确实在 Extension Builder 中设置了确切的 Companion Bundle 标识符,作为我在 Xcode 中根据指南为 safari companion 设置的标识符。还有什么我想念的吗?请帮忙!!!
Safari 扩展伴侣是一种 MacOS X 应用程序扩展。这些作为应用程序包的一部分提供。安装应用程序时(捆绑包复制到应用程序),Safari 会选择扩展。
首先,您需要一个目标类型为 "Cocoa application" 的 Xcode 项目("Command line tool" 不行)。然后你需要创建一个"Safari Extension Companion"类型的目标,你有机会在创建它的时候指定主应用程序。
当您构建和归档应用程序并导出归档文件时,您可以选择将扩展程序添加到应用程序包中。然后安装应用程序包。
确保扩展的包 ID 与 Safari Extension Builder 中的设置相匹配。此外,请确保应用程序和 Safari 扩展都已签名,并且密钥具有匹配的开发者 ID。对于 MacOS X 上的证书类型,选择 "Developer ID" - 首先在请求时,然后在从构建存档导出包时选择。
编辑:当本机伴侣崩溃时,Safari 会悄悄地禁用它。如果您删除并重新安装应用程序包,并重新启动 Safari,它会再次爱上这个伴侣。