uniapp热更新问题

uniapp热更新问题

注意:

  1. 保持打包好的apk包和wgt包的打包环境一致,也就是注意HBuilder的版本问题,如果进来就弹窗黑色窗口提示SDK版本问题,多半就是两个包之间的打包环境存在问题,这样你就必须做大版本升级来保证打包环境的一致性
  2. 每次打包前 应用版本名称应用版本号 都必须 +1
  3. 做好判断,不要重复更新wgt包

下面是简单的代码示例,如有需要请根据具体情况做好条件判断:

//热更新
		plus.runtime.getProperty(plus.runtime.appid,function(widgetInfo){
			console.log(widgetInfo);
			let versionNum = widgetInfo.version;
			let version = '1.0.53';
			if(versionNum != version){
				uni.downloadFile({
					url:'https://files.bailb.com/public/system/file/update.wgt',
					success:(res)=>{
						console.log(res);
						if(res.statusCode == 200 ){
							plus.runtime.install(res.tempFilePath,{
								force:true
							},function( ){
								uni.showModal({
									title:'公告',
									content:'升级完成,请点击确定对App进行重启!',
									showCancel: false,
									confirmText: '确定',
									success: () => {
										plus.runtime.restart();
									}
								});
							},function(e){
								uni.showModal({
									title:'错误提示',
									content:JSON.stringify(e),
									showCancel: '取消',
									confirmText: '确定'								
								});
							});
						}else{
							uni.showModal({
								title:'错误提示',
								content:'下载资源包失败',
								showCancel: '取消',
								confirmText: '确定'								
							});
						}
					}
				});
			}			
		});	

猜你喜欢

转载自blog.csdn.net/qq_26679989/article/details/108513291