Uni-App

uni-app: 如何实现增量更新功能?

特别声明:如果您喜欢小站的内容,可以点击 终身VIP¥188.00元 包年VIP¥88.00元 包季VIP¥28.00 包月VIP¥10.00元 进行全站阅读。 如果您对付费阅读有任何建议或想法,欢迎发送邮件至: 864479410@qq.com,或添加QQ:864479410(^_^)

都知道,很多APP都有增量更新功能,Uni APP也是在今年初,推出了增量更新功能,今天我们就来学习一波。
当然,很多应用市场为了防止开发者不经市场审核许可,给用户提供违法内容,对增量更新大多持排斥态度,特别是apple。所以拥有增量更新的app,需要注意以下几点:

1、上架审核期间不要弹出增量更新提示

2、增量更新内容使用https下载,避免被三方网络劫持

3、不要更新违法内容、不要通过增量更新破坏应用市场的利益,比如iOS的虚拟支付要给Apple抽佣等

通过本章节你能学到那些?

1、如何实现增量更新功能
2、Uni-App 如何制作增量更新升级包
3、Uni-App 增量更新功能需要注意些什么
4、Uni-App 部分相关api学习

uni-app: 引导页功能如何实现?

话不多说,直接上干货!

如何实现增量更新功能

这里不是针对Uni-App开发,所有的增量更新都应如此(但代码以Uni-App为例)。

1、app端,先调用服务端接口,判断是否需要更新

2、需要更新,直接下载更新升级包

3、安装升级包,app重启即可完成升级

ok,我们以Uni-App为例,看看代码具体实现

客户端实现
在 根目录 App.vue 的 onLaunch 中检测升级,代码如下:

// #ifdef APP-PLUS  
plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) {  
    uni.request({  
        url: 'http://www.javanx.cn/update/',  
        data: {  
            version: widgetInfo.version,  
            name: widgetInfo.name
        },  
        success: (result) => {
            var data = result.data;
            if (data.update && data.wgtUrl) {  
                uni.downloadFile({  
                    url: data.wgtUrl,  
                    success: (downloadResult) => {  
                        if (downloadResult.statusCode === 200) {  
                            plus.runtime.install(downloadResult.tempFilePath, {  
                                force: false  
                            }, function() {  
                                console.log('install success...');  
                                plus.runtime.restart();  
                            }, function(e) {
                              // 这里的错误很重要,最好能记录的服务器日志中,方便调试或以后维护了解更新错误情况,及时解决
                              // 如何更新到服务器?
                              // 调用一个接口,将e返回咯
                              console.error('install fail...');  
                            });  
                        }  
                    }  
                });  
            }  
        }  
    });  
});  
// #endif

代码解析:

更多精彩内容,可以点击“立即支付”,查看隐藏内容哦!

内容查看价格1立即支付    升级VIP后免费升级VIP,支付前请先登录,支付前请先登录,支付前请先登录!
本站资源一次收费,永久下载!发现资源失效,联系站长恢复即可!由于源码具有可复制性、可传播性,一经购买,概不退货,购买前请再三确认!本站提供相关技术支持,网站底部联系即可。时间:周一 ~ 周五 9:30-18:00。谢谢合作!

VIP用户所有收费资源免费,登录后左上角点击 昵称 ,进入用户中心充值成为VIP会员!如果您已经登录,点击这里成为尊贵VIP用户!

(413)

本文由 Web秀 作者:Javan 发表,转载请注明来源!

热评文章

评论:

4 条评论,访客:2 条,博主:2 条
  1. 雨桐
    雨桐发布于: 

    大佬,增量升级方案,如果清除APP的缓存数据后,会恢复到安装APP时候的版本,请问该问题有解决方案没?

    • Javan
      Javan发布于: 

      清除APP的缓存数据,版本是会回退,但是每次打开的时候都会去检查版本号,如果版本有差别会马上更新。
      据观察,王者app也会出现这个问题,每个小版本,如果清除缓存数据,就会需要更新,所以是正常情况。
      当然,用户一般不会清缓存,同时,如果增量次数特别多,可以用大版本全量更新,来解决这个问题。
      希望可以帮助到你,谢谢你的支持。

  2. JackyQ-developer
    JackyQ-developer发布于: 

    大哥,你左下角那个小女孩是咋做的

    • Javan
      Javan发布于: 

      有插件哦

发表评论

电子邮件地址不会被公开。 必填项已用*标注