当前位置: 代码迷 >> 综合 >> Cordova 学习笔记三
  详细解决方案

Cordova 学习笔记三

热度:66   发布时间:2023-12-08 17:44:24.0

自动更新

添加插件

cordova plugin add cordova-plugin-app-update

cordova-plugin-app-update插件依赖于cordova-plugin-appversion插件,故会自动安装cordova-plugin-appversion插件

调用脚本 app.js

var app = {initialize: function() {
    this.bindEvents();},bindEvents: function() {
    document.addEventListener('deviceready', this.onDeviceReady, false);},onDeviceReady: function() {
    checkAppUpdate();}
};function checkAppUpdate() {
    var updateUrl = serverURL+"remote-server-apk/version.xml";window.AppUpdate.checkAppUpdate(onSuccess, onFail, updateUrl);var me = this;function onFail() {
    //console.log('fail', JSON.stringify(arguments), arguments);}function onSuccess() {
    $.alert(JSON.stringify(arguments));//console.log('success', JSON.stringify(arguments), arguments);me.innerHTML+="<br/>request-completed";}
}
app.initialize();

.html引用依赖脚本

<script type="text/javascript" src="cordova.js"></script>
<script type="text/javascript" src="js/app.js"></script>

注意cordova.js文件与.html文件的相对位置

<div class="app"><h2><span>Version Code: </span><span id='version'></span></h2><div><h3>Update URL:</h3><textarea id="updateurl"></textarea></div><h1><a href="javascript:void(0)" id='check'>Check App Update</a></h1><!-- <div id="deviceready" class="blink"><p class="event listening">Connecting to Device</p><p class="event received">Device is Ready</p></div> --></div>

注意此处的class=”app”

获取版本信息

版本名称:AppVersion.version
版本代码:AppVersion.build

版本发布

这里写图片描述

version.xml文件中的内容如下,version标签的值为版本代码,切不可与版本名称混淆,利用AppVersion.build可获取

<update><version>10000</version><name>demo</name><url>serverURL/remote-server-apk/android-debug.apk</url>
</update>

设置版本名称

在config.xml的widget标签中设置version属性的属性值

显示版本名称

window.onload=function(){
    $("#version").text(AppVersion.version);
}

异常处理

在编译cordova-plugin-app-update-demo项目时报如下错误
这里写图片描述
解决方式:先移除android platform 然后在添加android platform
这里写图片描述

移除插件时报错
这里写图片描述

参考资料

cordova-plugin-app-update
cordova-plugin-app-update-demo
cordova-plugin-appversion

  相关解决方案