当前位置:  开发笔记 > 前端 > 正文

Safari Extension Companion始终为null

如何解决《SafariExtensionCompanion始终为null》经验,为你挑选了1个好方法。

我正在为我的本地Mac App开发Safari扩展,我想使用SafariExtension Companion在它们之间进行通信.

但是,在扩展的Global.html中,每当我尝试获取safari.extension.companion时,它始终为null.我是否设置了错误的扩展程序?

另外,根据指南,我可以使用safari.extension.addEventListener来监听来自本地app的消息,但是,当我调试扩展时,它会提示我safari.extension.addEventListener是未定义的,为什么呢?

答:safari.application.addEventListener是正确的,Apple写了一个错误的文件.

我根据指南在Extension Builder中设置了精确的Companion Bundle Identifier作为我在Xcode中为safari伴侣设置的标识符.还有什么我想念的吗?请帮忙!!!



1> Seva Aleksey..:

Safari扩展随播广告是一种MacOS X应用扩展程序.这些是作为应用程序包的一部分提供的.安装应用程序(将软件包复制到应用程序)后,Safari会选择扩展程序.

首先,您需要一个目标类型为"Cocoa application"的Xcode项目("命令行工具"不会这样做).然后,您需要创建"Safari Extension Companion"类型的目标,并且您有机会在创建主应用程序时指定它.

在构建和归档应用程序并导出存档时,您可以选择将扩展名添加到应用程序包中.然后安装应用包.

确保扩展的捆绑包ID与Safari Extension Builder中的设置匹配.此外,请确保应用程序和Safari扩展程序都已签名,并且密钥具有匹配的开发者ID.对于MacOS X上的证书类型,请选择"开发者ID" - 首先在请求时,然后从构建存档导出捆绑包时.

编辑:当本机伴侣崩溃时,Safari悄然禁用它.如果您删除并重新安装应用程序包,并重新启动Safari,它会再次喜欢该同伴.

推荐阅读
TXCWB_523
这个屌丝很懒,什么也没留下!
DevBox开发工具箱 | 专业的在线开发工具网站    京公网安备 11010802040832号  |  京ICP备19059560号-6
Copyright © 1998 - 2020 DevBox.CN. All Rights Reserved devBox.cn 开发工具箱 版权所有