主题
Api v2
现在我们已经开放对接,分为“使用接口”和“使用<script>标签”两种方式,接口包含“更新检测”和“下载安装/打开下载页”
使用接口
Base URL: https://d.icoyin.com/api/d/v2
包含以下两个接口
- 更新检测:
/check-for-updates - 下载安装/打开下载页:
/download
更新检测
参考
- 请求地址:
https://d.icoyin.com/api/d/v2/check-for-updates - 请求方式:
POST - 请求头部:
Content-Type:application/json
- 请求参数:
short_link:7 位应用短链码,String,必填platform:应用平台,String,必填android:安卓ios:苹果
version_code:用户当前已安装版本号,Number,必填
- 响应体结构:
status:状态,Number0:无更新(用户版本号>=可下载版本号)1:可更新(用户版本号<可下载版本号)2:可更新但账号下载点数不足
version_name:新版本的版本名,Stringversion_code:新版本的版本号,Numberfile_size:新版本文件大小(字节),Numberupdate_log:新版本更新日志,String
示例
js
axios({
method: 'POST',
url: 'https://d.icoyin.com/api/d/v2/check-for-updates',
headers: {
'Content-Type': 'application/json'
},
data: {
short_link: 'xxxxxxx',
platform: 'android'
version_code: 20240201
}
})json
{
"status": 1,
"version_name": "2024.2.2",
"version_code": 20240202,
"file_size": 11796250,
"update_log": "优化了一些产品体验。"
}下载安装/打开下载页
参考
- 请求地址:
https://d.icoyin.com/api/d/v2/download - 请求方式:
POST - 请求头部:
Content-Type:application/json
- 请求参数:
short_link:7 位应用短链码,String,必填platform:应用平台,Stringandroid:安卓,Defaultios:苹果
version_code:指定要下载的版本号,Numbermode:更新方式,Stringdownload_page:返回下载页链接,Defaultpackage_link:返回下载直链,会直接扣点
client_ip:用户 IP,String
- 响应体结构:
url:根据mode生成的链接,String
提示
- 若不传
version_code则默认返回最新可下载版本链接,此时mode参数依然有效 - 当
mode为package_link时:- 若接口请求时的 IP 与用户下载时的 IP 不一致,此时
client_ip为必填,否则下载直链会校验失败 - 无论是否访问
url都会扣点,且会根据platform的不同而返回不同格式结果,访问即可下载/安装- 当为
android时,会返回https://bsd.iruiku.cn/.../xxx.apk?...格式地址 - 当为
ios时,会返回itms-services://?...格式地址
- 当为
- 若接口请求时的 IP 与用户下载时的 IP 不一致,此时
示例
js
axios({
method: 'POST',
url: 'https://d.icoyin.com/api/d/v2/download',
headers: {
'Content-Type': 'application/json'
},
data: {
short_link: 'xxxxxxx',
platform: 'android'
version_code: 20240202,
mode: 'package_link',
client_ip: '1.1.1.1'
}
})json
{
"url": "https://bsd.iruiku.cn/.../xxx.apk?..."
}使用<script>标签
参考
- JS 文件地址:
https://d.icoyin.com/lib/download_v2.js - JS 方法名:
iRKDownload - JS 方法参数:
short_link:7 位应用短链码,String,必填platform:应用平台,Stringandroid:安卓ios:苹果
mode:自动访问方式,Stringpackage_link:返回下载直链,会直接扣点,Defaultdownload_page:返回下载页链接
提示
- 当不传
platform时,会尝试使用用户设备平台,PC 平台视为android - 此处传
mode的效果和使用接口方式时一样,唯一区别在于此时package_link为默认值,即默认会直接下载并扣点
示例
html
<!DOCTYPE html>
<html>
<head>
...
<script src="https://d.icoyin.com/lib/download_v2.js"></script>
...
</head>
<body>
...
<button onclick="iRKDownload({short_link: 'xxxxx'})">直接下载安装</button>
<button onclick="iRKDownload({short_link: 'xxxxx', mode: 'download_page'})">打开下载页面</button>
...
</body>
</html>js
iRKDownload({
short_link: 'xxxxx',
platform: 'ios'
})