下载资源前端资源详情
versionUp.zip
大小:4.01KB
价格:36积分
下载量:0
评分:
5.0
上传者:Zan_Z
更新日期:2024-08-09

文章《uniapp更新除了plus.runtime.getProperty的解决办法》中里面组件代码

资源文件列表(大概)

文件名
大小
versionUp.vue
6.79KB
versionUpgrade.js
2.53KB

资源内容介绍

versionUp包,内容引用地址自己改一下,文章《uniapp更新除了plus.runtime.getProperty的解决办法》中里面组件代码
/** * @description H5+下载App * @param downloadUrl:App下载链接 * @param progressCallBack:下载进度回调 */export const downloadApp = (downloadUrl, progressCallBack = () => {}, ) => {return new Promise((resolve, reject) => {//创建下载任务const downloadTask = plus.downloader.createDownload(downloadUrl, {method: "GET"}, (task, status) => {console.log(status,'status')if (status == 200) { //下载成功resolve(task.filename) } else {reject('fail')uni.showToast({title: '下载失败',duration: 1500,icon: "none"});}})//监听下载过程downloadTask.addEventListener("statechanged", (task, status) => {switch (task.state) {case 1: // 开始 break;case 2: //已连接到服务器 break;case 3: // 已接收到数据 let hasProgress = task.totalSize && task.totalSize > 0 //是否能获取到App大小if (hasProgress) {let current = parseInt(100 * task.downloadedSize / task.totalSize); //获取下载进度百分比progressCallBack(current)}break;case 4: // 下载完成 break;}});//开始执行下载downloadTask.start();}) }/** * @description H5+安装APP * @param fileName:app文件名 * @param callBack:安装成功回调 */export const installApp = (fileName, callBack = () => {}) => {//注册广播监听app安装情况onInstallListening(callBack);//开始安装plus.runtime.install(plus.io.convertLocalFileSystemURL(fileName), {}, () => {//成功跳转到安装界面}, function(error) {uni.showToast({title: '安装失败',duration: 1500,icon: "none"});}) }/** * @description 注册广播监听APP是否安装成功 * @param callBack:安装成功回调函数 */const onInstallListening = (callBack = () => {}) => { let mainActivity = plus.android.runtimeMainActivity(); //获取activity//生成广播接收器let receiver = plus.android.implements('io.dcloud.android.content.BroadcastReceiver', {onReceive: (context, intent) => { //接收广播回调 plus.android.importClass(intent);mainActivity.unregisterReceiver(receiver); //取消监听callBack()}});let IntentFilter = plus.android.importClass('android.content.IntentFilter');let Intent = plus.android.importClass('android.content.Intent');let filter = new IntentFilter();filter.addAction(Intent.ACTION_PACKAGE_ADDED); //监听APP安装 filter.addDataScheme("package");mainActivity.registerReceiver(receiver, filter); //注册广播 }

用户评论 (0)

发表评论

captcha