版本更新使用指南

概述

您可以使用YonBuilder移动开发平台 的版本更新服务,来向用户推送您App的新版本。版本更新服务只针对正式版APP,测试版无效。只能由低版本更新到高版本。

注意:使用版本更新功能需要添加mam原生插件。

一、使用自动更新

1, config.xml 中配置

 <preference name="autoUpdate" value="true" />

2,登录YonBuilder移动开发平台官网,进入控制台,找到“版本更新”(图一),点击进入版本管理界面(图二),如图:

图一: 版本

图二: 版本

3,选择平台、版本并填写更新地址,更新备注,最后点击“更新”按钮。 注意不要使用YonBuilder移动开发平台云编译的链接,此链接仅供开发测试使用。

可以下载云编译的安装包上传到自己服务器生成一个更新地址或使用您的APP在应用市场的下载链接。

4,打开手机上的APP,即可接收到新版本的推送。

二、使用API更新

也可使用mam原生插件更新,参考文档: mam

首先在项目代码config.xml中配置:

<preference name="autoUpdate" value="false" />

示例代码:

  function checkUpdate() {
            var mam = api.require('mam');
            mam.checkUpdate(function(ret, err) {
                if (ret) {
                    var result = ret.result;
                    if (result.update == true && result.closed == false) {
                        var str = '新版本型号:' + result.version + ';更新提示语:' + result.updateTip + ';下载地址:' + result.source + ';发布时间:' + result.time;
                        api.confirm({
                            title : '有新的版本,是否下载并安装 ',
                            msg : str,
                            buttons : ['确定', '取消']
                        }, function(ret, err) {
                            if (ret.buttonIndex == 1) {
                                if (api.systemType == "android") {
                                    api.download({
                                        url : result.source,
                                        report : true
                                    }, function(ret, err) {
                                        if (ret && 0 == ret.state) {/* 下载进度 */
                                            api.toast({
                                                msg : "正在下载应用" + ret.percent + "%",
                                                duration : 2000
                                            });
                                        }
                                        if (ret && 1 == ret.state) {/* 下载完成 */
                                            var savePath = ret.savePath;
                                            api.installApp({
                                                appUri : savePath
                                            });
                                        }
                                    });
                                }
                                if (api.systemType == "ios") {
                                    api.installApp({
                                        appUri : result.source
                                    });
                                }
                            }
                        });
                    } else {
                        api.alert({
                            msg : "暂无更新"
                        });
                    }
                } else {
                    api.alert({
                        msg : err.msg
                    });
                }
            });
        }

三、强制更新:

  1. 进入控制台的“版本”管理界面
  2. 点击右上角的“更新APP版本”,发布新的app版本:选择要发布的版本,以1.0.0为例,输入一些版本描述,或者留空;app下载链接是存在自己服务器上的安装包地址
  3. 发布成功后,并且做推广一段时间后,你的用户手机上都装了1.0.0版本了
  4. 重复1、2操作,发布一个新的版本,比如2.0.0
  5. 此时,安装了1.0.0的用户,在启动app时,就会收到2.0.0版本的提示更新,ta可以选择不更新
  6. 关闭版本:在版本记录界面中,在1.0.0版本记录的最右侧,选择“关闭”,即将1.0.0版本关闭
  7. 此时,安装了1.0.0的用户,在启动app时,就会收到2.0.0版本的强制更新,必须更新才能继续使用
  8. 其他版本的强制更新以此类推。

四、强制关闭:

同强制更新逻辑一致,唯一不同的点:当你将版本管理中的所有版本均关闭后,用户在启动app时,就会收到强制关闭的提示了,即该app不再使用

强制更新和强制关闭的主要逻辑:当用户手机上当前安装的版本被关闭时,如果此时服务器上有比该版本更新的版本,则强制用户更新到最新版本;如果用户手机上当前安装的版本没有被关闭时,则提示更新,用户可以选择不更新;当服务器上所有版本都被关闭时,该应用被强制关闭,用户无法再使用。注:前置条件是手机联网了。

是否仍需要帮助? 请保持联络!
最后更新于 2024/11/18