【笔记】把Chrome浏览器扩展转换成Safari浏览器扩展

前言

把Chrome浏览器扩展转换成Safari浏览器扩展
本案例仅适用于已经能获取到Chrome浏览器扩展的源码包.crx的情况下
或者作为开发者将自己开发的Chrome浏览器扩展转换为Safari浏览器扩展

准备工作

  • 能够得到扩展的.crx源码包
  • 在MacOS上准备Xcode.app

将crx源码包解压得到源码

  • .crx文件的扩展名改为.zip,然后通过压缩工具解压,得到扩展源码

创建Xcode项目

  • Create a new Xcode project

  • macOS->Safari Extension App->Next

  • 配置Product Name->Next

  • 选择项目存储位置

  • 右键Extension模块下的Resources目录->Show in Finder

  • 在访达中删除所有Resources目录内的所有文件,不要关闭该访达窗口,稍后需要使用

  • 在Xcode中也删除Extension模块下的Resources目录内的所有文件

  • 将Chrome浏览器插件源码全部复制到Extension模块下的Resources目录内(刚刚删除了该目录下的所有文件,现在用写好的源码文件替换上去)

  • 右键Extension模块下的Resources目录->Add Files to ""

  • 全选刚刚替换的新的源码文件->Add

  • 点击左上角运行按钮等待编译完成,编译完成后自动启动APP窗口,点击窗口中间的按钮Quit and Open Safari Settings会自动跳转到Safari设置窗口

  • 在Safari设置窗口中勾选刚刚制作好的Safari浏览器插件以启用

  • 如果遇到签名问题导致无法使用,可以在Safari的菜单栏中选择开发->勾选未签名的扩展(需要当前账户的登录密码认证)

完成

参考文献

稀土掘金——头疼脑胀的代码搬运工