uniapp安卓app里拦截webview下载apk,显示下载进度
let wv; //计划创建的webview
let wLoading;//计划创建loading
this.url = params.url || '';
console.log('当前环境:' + uni.getSystemInfoSync().platform); //如果是安卓才执行
if (uni.getSystemInfoSync().platform == 'android') {
let currentWebview = this.$mp.page.$getAppWebview(); //获取当前页面的webview对象
let _this = this;
setTimeout(function() {
wv = currentWebview.children()[0];
let url222 = wv.getURL();
//console.log('当前网址222: '+url222);
// 拦截所有页面跳转,可使用参数拦截.apk的跳转
wv.overrideUrlLoading({ mode: 'reject', match: '.*\.apk.*' }, function(e) {
wLoading = plus.nativeUI.showWaiting(" 开始下载... ");
console.log('拦截的URL666: '+e.url);
_this.dtask = plus.downloader.createDownload(e.url, {}, function(d, status) {
wLoading.setTitle(" 下载成功 ");
// 下载完成
if (status == 200) {
plus.runtime.install(plus.io.convertLocalFileSystemURL(d.filename), {}, {}, function(error) {
uni.showToast({
title: '安装失败',
mask: false,
duration: 1500
});
});
} else {
uni.showToast({
title: '下载失败,请检查您的网络',
mask: false,
duration: 1500
});
}
});
_this.dtask.addEventListener('statechanged', task => {
if (!_this.dtask) {
return;
}
switch (task.state) {
case 1:
console.log('开始下载');
break;
case 2:
console.log('链接到服务器...');
break;
case 3:
let progressVal = 0;
progressVal = Math.ceil(task.downloadedSize / task.totalSize * 100);
wLoading.setTitle(" 已下载"+progressVal+"% ");
console.log(" 已下载"+progressVal+"% ");
break;
case 4:
cnosole.log('监听下载完成');
wLoading.close();
break;
}
});
_this.dtask.start();
});
}, 1000); //如果是页面初始化调用时,需要延时一下
}
uniapp安卓app里拦截webview下载apk,显示下载进度相关推荐
- uniapp 安卓APP应用宝整改问题记录
uniapp 安卓APP应用宝整改问题记录 1.官方整改建议 应用宝官方指导 接到应用宝邮件,说未经同意,获取了信息,内容如下: 首页是这样的: 2.uniapp官方方案 uniapp官方方案 看指导 ...
- 【uniapp】uniapp安卓APP在线自动升级功能
纯前端实现uniapp写的安卓APP跟IOS在线自动升级功能 关于Uniapp自动升级用到的阿里云要收费的问题 使用的UI框架为UVIEW2.0 用到的请求等 总结下思路 就是通过获取XML文件返回来 ...
- 保姆级 uni-app 安卓APP上线步骤
第一步 点击发行-原生APP-云打包 包名:uni.UNIB43C45F 包名要跟manifest.json文件 获取的名称一至 第二步 确保manifest.json文件-源码视图 包名没有改可以跳 ...
- android服务下载apk,android下载apk并安装
1.设置权限 2.业务代码 package com.example.esri.app04.network; import android.app.ProgressDialog; import andr ...
- uniapp 安卓app 实现app加固(360加固)
首先了解一下为什么要进行加固? 移动应用中储存着不少数据,为保障APP的安全,除了定期对其进行安全检测外,还做好安全加固工作,防止二次打包.防止篡改.防止被破解等等,提前进行加密加固工作,保障开发者和 ...
- 网页转安卓App工具 在线云打包apk
在线云打包apk网址: http://ikaiwei.com:8889/ctrljs 实现这个功能其实比较简单,建立服务器,把安卓web插件的代码放到服务器上,工程中替换图标,名称即可. 网址注册登录 ...
- php 自动下载apk,Android 下载apk 自动 安装
Android N 后,由于不能访问私有路径,需要设置成共享文件 /** * android N 执行此安装方法 * * @param context 上下文 * @param file 文件路径 * ...
- Android webview video不显示下载
加入video标签 <video width="100%" height="auto" src="' + url + '" contr ...
- 百度网盘svip下载时显示下载请求中无下载速度
可以先全部暂停再全部开始 退出,重启网盘 弹出警示不用管,重启后可以继续之前的下载任务
- 安卓手机升级系统webview
今天公司有台android 5.1的的设备,其系统webview版本太低(39.0),给我手动升级了一下webview,顺便总结一下 一.前言 从Android4.4系统开始,Chromium内核取代 ...
最新文章
- python简单代码加法-CPython 源码中整数加法的实现
- matlab 小波滤波器系数导出函数,小波基函数和滤波系数.ppt
- oracle中extents存在的理由
- python基础之运算符
- python的map怎么用_python中的map怎么使用
- java native方法
- 深度学习之卷积神经网络CNN
- python如何复制文件?
- echarts中国地图3D各个城市标点demo
- Linux樹目錄詳解
- 常见的几种网络故障案例分析与解决
- 【渝粤教育】国家开放大学2018年秋季 0689-21T老年心理健康 参考试题
- python识别图片文字_python实现简单图片文字识别翻译OCR
- Spring整合mybatis事务管理
- 电脑上查看自己连接的WIFI密码
- python关键词采集_Python多线程采集百度相关搜索关键词
- usart hmi(串口屏)介绍
- 怎样一次性删掉word或wps文档里的空格行
- 安装anaconda和tensorflow
- centos7 安装jdk1.8 并配置环境变量
热门文章
- 高淇python怎么样_跟着高淇学Python——第一到第三章总结
- win10文件夹加密_如何使用电脑(win10)局域网共享文件给nPlayer(SMB)
- Python常用模块之 json模块
- 多功能随身工具箱APP源码+随身助手后台php源码
- 省市县联动列表html代码,若依添加省市县联动三级菜单
- 加速打开win10自带图片查看器
- 把视频转换成图片帧的代码
- windows——win10如何远程控制另一台电脑
- 插值法综合实例用matlab解决,matlab 插值法
- CASS11.0.0.6安装以及教程