好处
实现了热更新,可以在脚本内容有更新的时候,无需重新打包ipa,即可实现免安装后台自动更新程序。
原理
先来看本地程序中的update.json配置文件
{
"update_url": "http://www.jidongyun.net/uploads/apply/updateConfig.json",
"version": "1"
}
程序每次启动的时候,会自动请求update.json配置文件中update_url这个接口地址。
接口返回一段json配置,内容如下:
{
"download_url": "http://www.jidongyun.net/uploads/apply/release.iec",
"version": 2,
"dialog": true,
"msg": "优化部分问题",
"force": false
}
这段远程配置里,有一个关键的version,就是程序的版本号。
当远程版本号,大于本地update.json配置文件中的版本号时,程序就会弹出更新提示。
如果远程配置内容为空,或者本地版本号不大于远程版本号,则不提示更新。
实现
通常有两种方式来实现。
一种是阿里云/腾讯云OSS服务器,一种是云服务器。
建议使用OSS服务器,价格更低廉,性能更稳定。
这里演示使用腾讯云ECS云服务器来实现。
服务器已实现部署了宝塔和phalapi框架,并绑定了域名,指向public目录。
在phalapi的public目录下,创建一个uploads目录。
该目录用于上传各种用户文件。
在该目录下,创建一个apply目录。
该目录用于存储客户端程序。
将release.iec文件,和updateConfig.json文件,上传到apply目录。
本地update.json文件内容如上。
远程updateConfig.json文件内容如上。
打包测试
在IDEA中,打包程序
使用爱思助手的IPA工具进行签名
将签名好的ipa程序拖入到爱思的应用列表中,即可自动安装
程序安装好以后,在手机上打开程序。
由于本地配置中的version是1
远程配置中的version是2
所以程序会提示更新
避坑
温馨提示:此处内容需要登录后才能查看!
1. 官方交流QQ群,添加多个不批。建议使用安卓手机或电脑申请。
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » IOS免越狱开发-脱机版:热更新是如何实现的
飞云脚本圈: 586333520
Auto.js学习交流③群:286635606
Auto.js学习交流②群:712194666(满员)
IOS免越狱自动化测试群:691997586
2. 盗版,破解有损他人权益和违法作为,请各位会员支持正版。
3. 本站部分资源来源于用户上传和网络搜集,如有侵权请提供版权证明并联系站长删除。
4.如未特别申明,本站的技术性文章均为原创,未经授权,禁止转载/搬运等侵权行为。
5.全站所有付费服务均为虚拟商品,购买后自动发货。售出后概不接受任何理由的退、换。注册即为接受此条款。
6.如果站内内容侵犯了您的权益,请联系站长删除。
飞云脚本 » IOS免越狱开发-脱机版:热更新是如何实现的