软件源配置编写

提示

请先了解贡献准则,若已查看请忽略。

JSON 内容示例

{
  "base_version": 5,
  "uuid": "fd9b2602-62c5-4d55-bd1e-0d6537714ca0",
  "info": {
    "hub_name": "GitHub",
    "config_version": 3
  },
  "api_keywords": ["owner", "repo"],
  "app_url_templates": ["https://github.com/%owner/%repo/"]
}

节点解释

base_version

当前最新版本号:5
该值标记该配置文件遵守的软件源配置格式标准。
过时的版本号(过低的值)可能导致软件无法读取解析当前配置文件。

提示

每次 UpgradeAll 项目进行的自定义源配置的格式变更会使最新版本号+1。
有时不同版本并不是兼容的,若软件检测到不兼容的版本号,软件源脚本将不会运行,因此你必须保证你填写了正确的版本号。

uuid

该字符串作为软件源配置的唯一识别码(UUID v4)。
若用户从云端仓库拉取了你的配置文件,该 UUID 将一并被软件记录,并且后续检查云端配置更新都将以该值为标准。
注意:UUID 与软件源配置文件一一对应,且作为唯一识别码(你可以理解为身份证号码)。
可以这样说,应用只使用 UUID 判别配置(所以一个配置的 UUID 不要随便改)。

info

用于描述你的配置文件基本信息,之后会支持作者信息。

config_name

软件源的名字(尽量使用大家都了解含义的词语,请不要一味套用相关的项目名称,因为那可能长且无明确意义)。

config_version

跟踪项配置的版本号,用来告诉 UpgrdeAll 软件是否应该使用云端配置更新本地配置。
一般来说,每次你修改并上传云端,请务必将该值加一。

api_keywords

用作指定软件源 Python 脚本运行所需要的属性值。
即,若 UpgradeAll 无法通过网址解析等方法获取到这些值,UpgradeAll 客户端将不会向服务器请求数据。

app_url_templates

这是一个字符串数组,它有两个功能:

  1. 实现应用市场模式 用户根据需要,选择其中的一个网址(URL)模板,作为应用市场的 URL 模板,软件将根据该模板自动生成软件网址。

  2. 网址解析功能 客户端使用该字符串数组解析用户设置跟踪项时输入的网址以获得 app_id。
    解析模式为:

    • 尝试使用第一个网址模板解析用户网址。
    • 比对解析获得的参数是否包含了所有 api_keywords 里要求的属性。
      1. 符合,则使用。
      2. 不符合,使用下一个模板解析。
      3. 若都不符合,客户端停止检查该跟踪项的更新。