热更新调用例子
# 对接步骤
## 步骤一
### 调试环境: win10 64位 懒人版本≥3.8.6.2
**例子下载地址:http://ssdun.cn/home/API/lanrenV4.6.zip**
1. 将SsdunUtils.apk文件解压出来,然后右键点击你的懒人精灵项目的资源目录》添加》双击资源=>添加文件》找到解压目录选择SsdunUtils.apk。
2. 将Ssdun.luae文件解压出来,然后右键点击你的懒人精灵项目的插件目录》添加》已有项》找到解压目录选择Ssdun.luae。
然后在脚本中通过 require("Ssdun") 引入。
main.lua 是一个示例。
## 脚本代码
```lua
require("Ssdun")
--这里是本机版本号 每次更新必须修改这里的版本号 跟平台版本号一致,否则更新会 一直重复更新
local VERSION=100
statusCode,data=Ssdun.获取热更新信息("http://api.ssdun.cn:8520/ec/update?user_key=c66f660a1a86e69f4a0c7d0e9db4612a8781558e8b0c5861a539b61dcb77cc6e&app_secret=711")
if statusCode == 200 then
--判断跟服务器版本号是否一致
if VERSION < data["version"] then
print("=========有新版本更新==========执行更新===========")
print("=========本机版本号:"..VERSION.."======网络版本号:"..data["version"].."=========")
print("公告:")
print(data["msg"])
print("是否强制更新:")
print(data["force"])
print("是否弹出公告:")
print(data["dialog"])
Ssdun.热更新(data,true)
else
print("无需更新")
end
end
--此处运行你的脚本 这里只是保持脚本稍等一会退出 加上代码后需要删除此处 for循环
for i=1,10 do
print("当前脚本版本号:",VERSION)
sleep(1000)
end
```
## 步骤二、创建热更新Url
1. 点击平台的 热更新信息 添加一个热更新 (先随便添 主要是创建一个热更新的url)
图解1:![image.png](https://cos.easydoc.net/32036861/files/l63mmtcq.png)
2.复制热更新链接
图解2:
![image.png](https://cos.easydoc.net/32036861/files/l63ml4w3.png)
复制内容大概为这么一串
:http://api.ssdun.cn:8520/ec/update?user_key=c66f660a1a86e69f4a0c7d0e9db4612a8781558e8b0c5861a539b61dcb77XXXX&app_secret=XXX
3.脚本项目 代码内
```lua
require("Ssdun")
--这里是本机版本号 每次更新必须修改这里的版本号 跟平台版本号一致,否则更新会 一直重复更新
local VERSION=100
statusCode,data=Ssdun.获取热更新信息("http://api.ssdun.cn:8520/ec/update?user_key=c66f660a1a86e69f4a0c7d0e9db4612a8781558e8b0c5861a539b61dcb77XXXX&app_secret=XXX")
if statusCode == 200 then
--判断跟服务器版本号是否一致
if VERSION < data["version"] then
print("=========有新版本更新==========执行更新===========")
print("=========本机版本号:"..VERSION.."======网络版本号:"..data["version"].."=========")
print("公告:")
print(data["msg"])
print("是否强制更新:")
print(data["force"])
print("是否弹出公告:")
print(data["dialog"])
Ssdun.热更新(data,true)
else
print("无需更新")
end
end
--此处运行你的脚本 这里只是保持脚本稍等一会退出 加上代码后需要删除此处 for循环
for i=1,10 do
print("当前脚本版本号:",VERSION)
sleep(1000)
end
```
**提示:update.json内version必须和平台添加的版本号一致,这样热更新就创建好了**
### 这样就可以打包脚本了, 为热更新脚本耐下伏笔!!!
## 步骤三、如何让脚本热更
1. 修改项目脚本代码
2. 在项目脚本找到 VERSION 手动+1
如以下代码
```lua
require("Ssdun")
--这里是本机版本号 每次更新必须修改这里的版本号 跟平台版本号一致,否则更新会 一直重复更新
local VERSION=101
statusCode,data=Ssdun.获取热更新信息("http://api.ssdun.cn:8520/ec/update?user_key=c66f660a1a86e69f4a0c7d0e9db4612a8781558e8b0c5861a539b61dcb77XXXX&app_secret=XXX")
if statusCode == 200 then
--判断跟服务器版本号是否一致
if VERSION < data["version"] then
print("=========有新版本更新==========执行更新===========")
print("=========本机版本号:"..VERSION.."======网络版本号:"..data["version"].."=========")
print("公告:")
print(data["msg"])
print("是否强制更新:")
print(data["force"])
print("是否弹出公告:")
print(data["dialog"])
Ssdun.热更新(data,true)
else
print("无需更新")
end
end
--此处运行你的脚本 这里只是保持脚本稍等一会退出 加上代码后需要删除此处 for循环
for i=1,10 do
print("当前脚本版本号:",VERSION)
sleep(1000)
end
```
4. 生成热更新文件
图解8:![image.png](https://cos.easydoc.net/32036861/files/l64umaaz.png)
5.打开平台 找到 **添加热更新包**
图解6:
![image.png](https://cos.easydoc.net/32036861/files/l63n3hd7.png)
填上热更新包昵称
上传生成出来的 **生成路径 后缀为.lr的文件**
然后立即提交
图解7:
![image.png](https://cos.easydoc.net/32036861/files/l63n689c.png)
**复制下载链接**
URL大概为这么一串:http://api.ssdun.cn:8520/ec/down?user_key=c66f660a1a86e69f4a0c7d0e9db4612a8781558e8b0c5861a539b61dcb77XXXX&file_md5=FD0AC3259B87919C55DFF64845910986
6.平台切换到 热更新信息 对应上面添加的 热更新信息 点击 编辑
![image.png](https://cos.easydoc.net/32036861/files/l63na97m.png)
修改版本号对应 脚本项目update.json内的version
修改更新URL **图解7** 复制的URL
修改MD5 为 **图解5** 内的MD5值
然后保存。
6.重新打开脚本APP 就会提醒是否更新脚本了