安装应用

获取 download_token

安装应用需要使用 download_token,获取download_token

GET http://api.fir.im/apps/:id/download_token

参数列表

名称 类型 必填 说明
api_token String 长度为 32, 用户在 fir 的 api_token
id String 应用id,可在"应用管理"->"基本信息"查看

调用示例

curl "http://api.fir.im/apps/xxx/download_token?api_token=xxxxx"

响应数据

{
    "download_token": "7ba9ab27170b31d4ce222ba64cfd2233"
}

安装 Android 应用

安装 Android 应用

POST http://download.fir.im/apps/:id/install

参数列表

名称 类型 必填 说明
download_token String 根据上述接口获取的download_token
id String 应用id,可在"应用管理"->"基本信息"查看
release_id String 安装历史版本时可使用

调用示例

curl -X "POST" "http://download.fir.im/apps/:id/install?download_token=xxxx"

响应示例

{
    "url": "http://pkg.fir.im/xxx.apk"
}

GET http://download.fir.im/apps/:id/install

参数列表

名称 类型 必填 说明
download_token String 根据上述接口获取的download_token
id String 应用id,可在"应用管理"->"基本信息"查看
release_id String 安装历史版本时可使用

调用示例

open "http://download.fir.im/apps/:id/install?download_token=xxxx"

响应示例

直接302跳转到文件地址 直接下载

安装 iOS 应用 方式一

itms-services://?action=download-manifest&url=https%3A%2F%2Fdownload.fir.im%2Fapps%2F%3Aid%2Finstall%3Fdownload_token%3Dxxxxxx
# download_token 由上述接口产生
# url 后面的链接地址https://download.fir.im/apps/xxx/install?download_token=xxxxxx,需要 URLEncode 成 https%3A%2F%2Fdownload.fir.im%2Fapps%2F%3Aid%2Finstall%3Fdownload_token%3Dxxxxxx

安装 iOS 应用 方式二

安装 iOS 应用需要三个步骤:

  1. 获取 download_token(同 Android)
  2. 获取 plist_id
  3. 构造安装链接

将获取到 download_token 作为参数,调用下面的 API 生成 plist_id (默认生成主版本的下载地址,带 release_id 参数可以生成历史版本的 plist_id)

获取plist_id

POST http://download.fir.im/apps/:id/install

参数列表

名称 类型 必填 说明
download_token String 根据上述获取的download_token
id String 应用id,可在"应用管理"->"基本信息"查看
release_id String 安装历史版本时可使用

调用示例

curl -X "POST" "http://download.fir.im/apps/:id/install?download_token=xxxxx"

响应示例

{
    "url": "0b3431e94b76a7dbd7634e4db5371e34624f099bcf" #在安装ios应用中对应的plist_id (20分钟失效,每次安装都要重新生成)
}

plist_id 有效期为 20 分钟,每次调用安装接口前请重新生成

使用响应数据中的 url 替换下面的 URL 中的 :plist_id,然后在 iOS 设备的 Safari 中打开此 URL 就会提示安装

安装示例

itms-services://?action=download-manifest&url=https://fir.im/plists/:plist_id
# url 后面的链接地址需要 URLEncode