gpt4 book ai didi

google-chrome-extension - 将 Web 扩展转换为 Safari 应用扩展

转载 作者:行者123 更新时间:2023-12-02 16:04:52 25 4
gpt4 key购买 nike

我有当前在 Chrome、Firefox 和 Opera 上运行的 Web 扩展。现在我想知道是否有一种方法可以使用相同的代码来构建 Safari 应用程序扩展,也许像 PhoneGap(将 Safari 应用程序扩展项目中的所有现有 JS 代码包装起来)之类的东西,或者有像 javascript 的选项卡处理之类的限制,有些事情只需要用 native 代码编写。

谢谢

最佳答案

您应该能够重用网络扩展中的内容脚本(但您需要重写代码才能使用“后台”发送/接收消息)。后台脚本必须用 Swift 或 Objective-C 重新编写。

您需要开发:

  • Mac 主机应用程序(将与扩展程序配套):Swift 或 Objective-C(此应用程序必须具备通过 Apple 审核的最低功能 - 请查看 Apple 针对 Mac 应用程序的指南)
  • 扩展:Swift 或 Objective-C + HTML/JS(对于其他浏览器)Swift(或 Obj-C)中的扩展代码相当于 Web 扩展中的背景页面。它将控制工具栏按钮、扩展的生命周期,并可以与注入(inject)的脚本交互。

您在 Apple 网站上有一个(小)示例:https://developer.apple.com/documentation/safariservices/safari_app_extensions?changes=_2&language=objc

您不应再使用扩展生成器(可从 Safari 中的开发人员菜单访问),因为这仅适用于旧版(纯 JS)扩展。所以你需要进入XCode。

最后一件事,但并非最不重要的...与 Safari 旧版扩展相比,Safari 应用扩展“有点”受到更多限制(例如,您无法以编程方式打开工具栏弹出窗口,就像 Chrome 一样)实际上是网络扩展)。

关于google-chrome-extension - 将 Web 扩展转换为 Safari 应用扩展,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52475174/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com