【UNI-APP OR H5+ 开发-必看教程】APP自动更新实现(带进度条)

笔记--php uniapp 整包更新、热更新显示进度 uniapp 热更新 整包更新 阅读详情

UNI-APP笔记-底部附源码!!!

【下面附一段实战应用的案例】

——Down plus.downloader.createDownload(url,option,completedCB)

自动更新:DownLoader

        Downloader模块管理网络文件下载任务,用于从服务器下载各种文件,并支持跨域访问操作。通过plus.downloader获取下载管理对象。Downloader下载使用HTTP的GET/POST方式请求下载文件,符合标准HTTP/HTTPS传输协议。

方法:

createDownload新建下载任务
enumerate枚举下载任务
clear清除下载任务
startAll开始所有下载任务

对象:

Download管理一个下载任务
DownloadEvent下载任务事件类型
DownloadState下载任务状态
DownloadOptions下载任务参数

回调方法:

DownloadCompletedCallback下载任务完成时的回调
DownloadStateChangedCallback下载任务状态变化回调
DownloadEnumerateCallback枚举下载任务回调

使用: plus.downloader.createDownload(url,option,completedCB)

说明:

        请求下载管理创建新的下载任务,创建成功则返回Download对象,用于管理下载任务。

参数:

  • url: ( String ) 必选 要下载文件资源地址

    要下载文件的url地址,仅支持网络资源地址,支持http或https协议。 允许创建多个相同url地址的下载任务。 注意:如果url地址中包含中文或空格等,需要进行urlencode转换。

  • options: ( DownloadOptions ) 可选 下载任务的参数

    可通过此参数设置下载任务属性,如保存文件路径、下载优先级等。

  • completedCB: ( DownloadCompletedCallback ) 可选 下载任务完成回调函数

    当下载任务下载完成时触发,成功或失败都会触发。

返回值:

       新建的下载任务对象

附代码:

createDownload(url) {
				var dtask = plus.downloader.createDownload(url, {},
					function(d, status) {
						uni.showToast({
							title: '下载完成',
							mask: false,
							duration: 1000
						});
						// 下载完成
						console.log('status: ' + status);
						if (status == 200) {
							console.log('下载成功:' + d.filename);
							console.log('plus.io.convertLocalFileSystemURL(d.filename): ' + plus.io
								.convertLocalFileSystemURL(d.filename))
							plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename), {}, function(success) {
								uni.showToast({
									title: '安装成功',
									mask: false,
									duration: 1500
								});
							}, function(error) {
								uni.showToast({
									title: '安装失败-01',
									mask: false,
									duration: 1500
								});
							})
						} else {
							uni.showToast({
								title: '更新失败-02',
								mask: false,
								duration: 1500
							});
						}
					});
				try {
					dtask.start(); // 开启下载的任务
					var prg = 0;
					var showLoading = plus.nativeUI.showWaiting("正在下载"); //创建一个showWaiting对象 
					
					dtask.addEventListener('statechanged', function(task, status) {
						console.log('自动更新测试1:',task) 
						console.log('自动更新测试2:',status) 
						// 给下载任务设置一个监听 并根据状态  做操作
						switch (task.state) {
							case 1:
								showLoading.setTitle("正在下载");
								break;
							case 2:
								showLoading.setTitle("已连接到服务器");
								break;
							case 3:
								prg = parseInt((parseFloat(task.downloadedSize) / parseFloat(task.totalSize)) *
									100);
								showLoading.setTitle("  正在下载" + prg + "%  ");
								break;
							case 4:
								plus.nativeUI.closeWaiting();
								//下载完成
								break;
						}
					});
				} catch (err) {
					console.log('错误信息',err)
					plus.nativeUI.closeWaiting();
				}
			}

思路:

1:初始化,调用后台更新接口

2:获取当前APP应用版本号,和应用版本名称

3:根据接口返回的数据判断是否需要更新,

4:不需要则提示,需要则进行以上代码更新的操作

后台更新数据表结构:

字段名含义说明
id标识列自增,唯一,非空
app_noapp应用版本号唯一,非空
app_nmapp应用版本名称唯一,非空
app_force是否强制更新默认不强制0
app_desc上传说明无
app_time上传时间无

另外如果有小伙伴对后台更新接口操作不清楚的同学,欢迎问答~

附官网文档链接:HTML5+ API Reference

H5+APP的几种实现形式 如何实现H5+App 阅读详情

相关推荐

uni-app入门

然后在模板中使用``组件,通过`v-model`绑定`selectedValue`,将`options`作为`range`传入组件中。uni-app提供了丰富的插件市场和组件库,开发者可以根据自己的需求选择合适的插件和组件,轻松扩展应用的功能。以上只是uni-app中常用的一些组件,uni-app还提供了更多丰富的组件库,开发者可以根据需求选择合适的组件来完成应用的开发。性能优秀:uni-app采用了原生渲染的方式,充分发挥了各个平台的优势,应用的性能表现出色,用户体验好。

qq_40825081的博客 1250

uniapp plus.downloader.createDownload多任务下载

uniapp 多任务下载

web_lizhongshuo的博客 2271

uni-app 经验分享,从入门到离职(年度实战总结:经验篇)——上传图片以及小程序隐私保护指引设置

白马过隙,转瞬之间 23 年的进度条已经快达到 100%,在迎接 24 年到来的同时,我们不妨来回顾一下这充满许多值得回忆时刻的 23年。过去的一年里,我们都经历了很多事情,或许经历了许多重要的时刻和学习机会;或许扩展了自己的知识领域;或许提升了自己的技术水平等等。接下来我来分享一下我在 23 年的一些代码笔记以及实战项目笔记。

黛琳ghz的博客,期待你的关注。 4万+

下载文件plus.downloader.createDownload

function download(){ console.log('开始下载') var url = 'http://soutugo.com/Upload/Images/2020/3/12_s/1a7f9e535f898fa071c65e82967d1cc.JPG'; //文件名称可以在上传时进行保存,下载时取出,当文件名称中存在单双引号时,要做好处理,否则会报错 var name = ...

u012536222的博客 1万+

[Uni-app] 微信小程序圆环进度条实现与优化指南

本文详细介绍了在Uni-app中实现微信小程序圆环进度条的方法与优化技巧。从基础实现到组件化设计,再到性能优化和跨平台适配,提供了全面的解决方案。特别针对微信小程序环境,分享了CSS动画优化、平台差异处理等实战经验,帮助开发者高效构建高性能的圆环进度条组件。

weixin_27180827的博客 245

H5动感歌词实现:KRC解析与Uni-App音频同步技术详解

在Web前端开发中,音频处理与动态渲染是构建富媒体应用的核心技术。其原理涉及音频时间轴的精确控制、二进制数据解析以及高性能动画渲染。这些技术为在线音乐、语音交互等场景提供了关键支持,能显著提升用户体验。本文聚焦于KRC歌词格式的解密与解析,通过异或算法处理加密数据,并详细探讨了在Uni-App H5环境下,如何利用CSS3动画与音频事件同步,实现流畅的动感歌词效果,解决了移动端性能优化与跨端通信等工程难题。

weixin_30621711的博客 368

uni-app开发总结分享

uni-app是一个使用Vue.js开发所有前端应用的框架,开发者编写一套代码,可发布到14个平台:iOS、Android、Web(响应式)、以及各种小程序(微信/支付宝/百度/头条/飞书/QQ/快手/钉钉/淘宝)、快应用等多个平台。uni-app官网下面是uni-app功能框架图,可以了解下它的架构。​uniapp底层集成了native技术,就是h5+引擎,能调用手机原生api,所以uniapp能开发接近原生性能的app,这是js引擎部分;它是双引擎,渲染又是独立一个独立引擎。

qq_39891453的博客 1万+

uniapp - 实现半圆环进度条可动态加减进度组件源码,半圆形温度控制调节可自定义颜色大小或数值等样式,uniApp半圆环型进度条插件(全端兼容H5网页、微信小程序、安卓app、苹果app、nvue

uni-app,h5移动端网页,微信小程序,支付宝小程序,Android安卓,苹果ios,app,nvue,uni-app 半圆进度条封装,在uniapp中实现半个圆形进度条,uniapp环形进度条,Uni-app微信小程序的圆环进度条,uniapp 半圆倒计时,uniapp 实现渐变圆弧进度条,并且根据实际数值,控制进度,环形进度条,只要一半进度条效果,实现半圆进度条图形,UNIAPP绘制半圆环虚线进度条,带动画特效,绘制半圆环虚线进度条,实现一半的圆形进度条并显示数字百分比效果示例,2d带动画的半圆形刻

✅ 精选推荐文章 8682

uniapp打包的app内嵌h5(uniapp开发),如何实现app自动升级

使用uniapp开发的app和h5,然后将h5嵌入进app,实现app自动升级

一路走一路看,一边哭一边笑 1234

uni-app文件下载方法[源码]

本文介绍了在uni-app中使用plus.downloader.createDownload进行文件下载的方法,适用于web-view和APP页面。相较于传统的触发a标签下载方式,该方法支持文件重命名,提升用户体验。文章详细说明了createDownload函数的参数和用法,包括url、options和completedCB回调函数,并提供了具体的代码示例,展示了如何实现文件下载、重命名以及下载成功后的文件打开操作。

物理信息神经网络(PINNs)在交通运输领域的应用

物理信息神经网络(PINNs)在交通运输领域的应用研究结合了数据驱动与物理模型约束,通过嵌入交通流守恒定律等物理信息,显著提升了交通状态估计与预测的精度。该技术仅需少量观测数据(流量、速度、密度等),即可实现高精度建模,尤其适用于数据稀疏场景。研究重点包括:交通状态估计与预测、参数辨识、交通控制优化等领域,同时面临计算成本高、物理模型依赖性等挑战。未来需解决大规模异构数据处理问题,以进一步推动智能交通系统发展。

qq_49609070的博客 944

uni-app多端文件下载保存方案:H5与小程序进度条实现与封装

文件下载与本地存储是移动应用开发中的基础功能,其核心原理是通过网络请求获取服务器资源并持久化到设备。在混合开发场景下,由于不同平台(如H5浏览器与微信小程序)的底层API与权限模型存在显著差异,实现一套统一、流畅的下载体验面临诸多挑战。H5端主要依赖XMLHttpRequest或Fetch API进行网络请求,并通过Blob对象处理二进制数据,但其文件系统访问权限受限;微信小程序则提供了wx.downloadFile等原生API,能力更强但受限于域名白名单。从技术价值看,一套封装良好的多端下载方案能显著提升

cmff98425的博客 395

十大排序算法详解(一)冒泡排序、选择排序、插入排序、快速排序、希尔排序

冒泡排序、选择排序、插入排序、快速排序、希尔排序

HK的博客 18万+

uni-app移动端-H5-微信小程序下载保存图片,文档和视频到手机,带进度条

移动端-H5-微信小程序下载保存图片,文档和视频到手机,带进度条

weixin_45145119的博客 2576

软件测试 | 手把手教你如何使用 Charles 抓包工具(电脑+手机端)

软件测试 | 手把手教你如何使用 Charles 抓包工具(电脑+手机端)一、Charles简介二、Charles下载与安装三、Charles配置(1)Charles-PC端的配置如下:(2)过滤网络请求:(3)Charles抓取HTTPS请求包前置条件:(4)Charles抓取HTTPS双向认证包:关注我,免费领取学习资料 嘿。大家好,我是4U: 做过 APP 测试的同学都会接触抓包工具,通过抓包工具可以获取到客户端与服务端接口的交互数据,在实际测试APP的过程中,我们往往会发现服务端返回 的参数字段错

leboxy的博客 4153

robomimic实验复现全流程:从数据集下载到训练视频生成

本文详细介绍了机器人模仿学习项目RoboMimic的完整实验复现流程。内容涵盖从使用Conda创建Python 3.8隔离环境、安装RoboSuite仿真器和MuJoCo物理引擎,到下载并探索数据集、配置与启动模型训练,最后进行模型评估和生成策略执行视频。该指南旨在帮助研究者和开发者高效搭建实战环境,规避常见问题,快速验证算法或应用于实际场景。

weixin_29089057的博客 518

uni-app优秀插件

组件库 ThorUI ColorUI UI界面和组件 轮播图系列 高级轮播图 精致的图片展示组件,自定义面板指示点,可配置性强 大小图轮播,类似手机相册 图片轮播,商品详情图 QSwiper组件 切换动画很强大 一款由自定义元素组成的有过渡动画及背景渐变的swiper、引导页,切分为元素解决了小程序占内存大问题 画廊(ynGallery)组件 类似轮播但不是 通用画廊(ynGallery)组件 流畅的滑动感 类似于猫眼影廊 体验感不错 带缩放的轮播 轮播不能用于H5 uni.createAnimat

Liuyilllin的博客 7731

【RDMA】13. RDMA之用户态与内核态交互

原文:https://zhuanlan.zhihu.com/p/346708569 在“RDMA之Verbs”一文中我们说道,Verbs API分为用户态和内核态,分别以ibv_和ib_作为前缀。RDMA技术的最大的优势就在于用户态可以绕过内核,直接控制硬件收发数据,减少了系统调用和内存拷贝次数,所以大部分的RDMA应用都是用户态应用,即使用以ibv_为前缀的用户态Verbs API。 但是并非所有的用户态Verbs API都可以完全绕开内核,本文中我来讲解一下哪些API依赖于内核RDMA子系统(包括驱

我的笔记本 4285

uni-app 和 Vue 的区别

组件/标签的变化 以前是html标签,现在是小程序标签。 div 改成 view span、font 改成 text a 改成 navigator router-link img 改成 image input 还在,但type属性改成了confirmtype form、button、checkbox、radio、label、textarea、canvas、video 这些还在。 select 改成 picker iframe 改成 web-view ul、li没有了,都用view替代 audio 不再推

单飞吧的博客 1万+

FANUC机器人KAREL编程实战:手把手教你用SOCKET指令连接外部设备(附完整.KL文件)

本文详细解析了FANUC机器人KAREL编程中SOCKET指令的应用,从开发环境配置到工业级通讯全流程,涵盖网络参数设置、模块化代码设计、错误处理及现场调试技巧。通过实战案例,帮助开发者掌握与外部设备稳定连接的关键技术,提升工业自动化系统的通讯可靠性。

weixin_30907935的博客 226

3D高斯压缩黑科技开源!1GB场景压到42MB,Web3D迎来“WebP时刻”——SOG格式深度解析

Web3D迎来革命性突破!PlayCanvas开源全新3D高斯泼溅压缩格式SOG,将1GB场景压缩至仅42MB,体积缩小95%,加载速度提升10倍+。SOG通过将3D数据编码为WebP纹理+元数据,实现GPU零拷贝实时渲染,完美兼容WebGL/WebGPU。实测显示,4百万高斯点的场景在手机上1.5秒内完成加载,内存占用降低83%。这一技术突破为电商展示、虚拟旅游、工业设计等领域带来新机遇,开发者可通过开源工具链快速集成。SOG被誉为"3D界的WebP",有望成为下一代3D互联网的基础设

这里汇聚了前沿的技术分享与实用的开发技巧,带你探索从创意到企业的技术创业之路。 865

Uni-App从入门到实战

Uni-App入门到一般

m0_52933282的博客 3740

Python 爬虫实战:Twitter 数据定向抓取(特定话题 + 用户推文爬取与分析)

在社交媒体研究、舆情监测和市场分析等领域,Twitter 数据具有极高的价值。本文将详细介绍如何使用 Python 构建一个完整的 Twitter 数据爬取系统,包括特定话题和用户推文的爬取与分析。我们将涵盖从认证到数据存储、清洗、分析和可视化的全流程。

u014481728的博客 1038

基于Uni-APP多端「h5+小程序+App」高仿抖音小视频|直播|聊天实例

uni-ttLive 基于uni-app+uView-ui跨端开发短视频+直播聊天实例。 全新研发的一款多端仿制抖音短视频+直播+聊天项目,基于uniApp+Vue.js+Vuex+Nvue+uViewUI+uaPopup等技术开发而成。支持播放/暂停/上下滑动切换、全屏沉浸式体验。 功能特点 导航条+底部菜单透明式全屏模式 流畅的滑动切换体验 mini短视频时间进度条 支持小视频播放/暂停,上下滑动切换 全屏沉浸式支持Nvue页面短视频 一款集成了小视频、直播、聊天及朋友圈于一体的跨设备u

码农ICoding 1万+

efm32 入门.pdf

本PDF共计22页,介绍的是操作驱动API,下载与否自己斟酌。

LinePhone3.2.7(android端最新版本) sip客户端

SIP客户端For android:LinePhone3.2.7(最新版本),官网地址:http://www.linphone.org/

uni-app 1.2发布,iOS、Android、小程序、H5主流四端全覆盖

多端泛滥、精力有限,是很多前端开发者每日的梦魇。 uni-app遵循Vue.js语法规范,一套代码,多端发行,切实解决了众多开发者的痛点; 故自8月份发布以来,已有上万名开发人员拥抱uni-app,目前已累计创建了数万个应用,活跃的开发者们每天在QQ群中产生数万条交流记录。 奔跑的脚步不会停止,历时一个多月的打磨,uni-app 1.2版本正式发布,支持发行到H5平台。 至此,uni-app实现了...

hbcui1984的专栏 1749

汉书HE8,好用的汇编代码编写工具

汉书HE8,好用的汇编代码编写工具早期编写汇编代码所用功能强大

上一篇: Gitee(码云)托管代码超详细!!!
下一篇: 【.NET_EFCore中常见错误汇总】
王时信
博客等级 码龄7年 1万+粉丝 7原创
评论 4
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值