发布插件

发布插件可以让他人也能使用你的插件,私人使用请忽略这一步。

发布插件主要包含两个方面:

  • 支持检索:方便其他用户发现这个插件
  • 支持检查更新:当你对插件进行更新之后,方便其他用户发现并升级到最新版

支持检索

将项目传到 GitHub,然后给这个项目添加一个名为 bobplugintopic,这样大家就可以通过下面这个链接找到这个项目了。

https://github.com/topics/bobplugin在新窗口打开

支持检查更新

在介绍 info.json 的文章中可以看到描述插件信息里面有个字段是 appcast,这个字段是一个 URL,用于请求获取插件的最新版本信息。

这个接口请求应返回 json 格式数据,具体如下:

字段类型是否必须说明
identifierstring插件的唯一标识符,需和插件 info.json 文件中的唯一标识符一致。
versionsarray版本信息数组,请倒序排列,新版本放前面。具体结构看 version object

version object 结构如下:

字段类型是否必须说明
versionstring版本号,请与对应插件包 info.json 中的信息一致。
descstring插件的更新内容。
sha256string插件包 SHA256 哈希值,会和从 url 中下载的插件包进行校验。
urlstring插件包下载地址。
minBobVersionstring-最低支持本插件的 Bob 版本,请与对应插件包 info.json 中的信息一致。

SHA256

sha256 通过以下方式获取,打开 Mac 终端输入以下命令

shasum -a 256 <这里换成插件包文件路径>

存放 appcast.json

前面建议的是将插件仓库放到 GitHub,所以这里也以 GitHub 为例。

可将 appcast.json 文件放到插件仓库某个位置,假如放到根目录,即可通过以下链接获取 json 文件信息,将以下链接填写到 info.json 中的 appcast 字段即可。(将用户名和仓库名替换为自己的)

https://github.com/用户名/插件仓库名/raw/main/appcast.json

示例

appcast.json 文件内容示例:

{
    "identifier": "com.ripperhe.translate.test",
    "versions": [
        {
            "version": "0.2.0",
            "desc": "修复xxx问题",
            "sha256": "00744ca8b8d84713425b7fc2073ca498aa7633faac537a1c1fa80d1264d3fc03",
            "url": "https://raw.githubusercontent.com/ripperhe/test/master/bobplugin/test_0.2.0.bobplugin",
            "minBobVersion": "0.5.0"
        },
        {
            "version": "0.1.0",
            "desc": "初始版本",
            "sha256": "5ec845ee2b60ac931ecac6f56c6a74ee16928ea4a8a4c98e2e85f09316b5ac1e",
            "url": "https://raw.githubusercontent.com/ripperhe/test/master/bobplugin/test_0.1.0.bobplugin",
            "minBobVersion": "0.5.0"
        }
    ]
}
上次更新: