js解析上传APK文件的详细信息
前端解析APK版本信息
需要安装这个包,可以使用cnpm或者npm
npm 安装 app-info-parser ( 命令:npm install app-info-parser)
APKInfo为input上传文件的file对象。
html代码
:http-request="uploadFile" 文件自定义上传
使用的是elementui
drag拖拽
<el-upload
class="upload-demo"
drag
:show-file-list="hideFile"
:action="bgImgUpUrl"
:http-request="uploadFile"
:multiple="multipleFlag">
<i class="iconfont icon-template"></i>
<div class="el-upload__text">
<a class="p-p">点击或将文件拖拽到这里上传</a>
<br/>
<a class="a-a">支持扩展名:.APK</a>
<br/><a>{{File_info}}</a>
</div>
<div class="el-upload__tip" slot="tip"></div>
</el-upload>
hideFile:false,//隐藏上传文件信息
bgImgUpUrl:this.$dynamicAppConfig.uploadUrl + this.$dynamicAppConfig.fileAction,//文件上传的地址
multipleFlag:false,//不需要多文件上传
引入包文件
const AppInfoParser=require("app-info-parser")
//这个就文件自定义上传
uploadFile(params) {
//获取文件的后缀
var fileName =params.file.name;
var fileArr = fileName.split('.');
var fileType=fileArr[fileArr.length-1];
//判断文件后缀是否正确
if(fileType=='apk'){
// 文件上传 不需要管这一段,这是我的逻辑
this.File_info="正在上传中..."
this.$api.fileUpload({
file: params.file
}).then(fileres => {
if(fileres.success==true){
console.log( fileres)
this.appupload_params.downLoadUrl=fileres.data;
this.File_info='上传成功';
}else{
this.File_info='上传失败';
}
})
// 解析apk信息(这里很重要)
//params.file 是这个文件对象
const parser = new AppInfoParser(params.file)
// parser.parse().then();是这个插件提供的方法,注意不要写错了
parser.parse().then(result => {
console.log("apk解析后的信息",result )
}).catch(err => {
console.log('err ----> ', err)
})
}else{
this.$message.error('文件格式不正确');
}
},
js解析上传APK文件的详细信息的更多相关文章
- 基于 jq 实现拖拽上传 APK 文件,js解析 APK 信息
技术栈 jquery 文件上传:jquery.fileupload,github 文档 apk 文件解析:app-info-parser,github 文档 参考:前端解析ipa.apk安装包信息 - ...
- JS原生上传大文件显示进度条-php上传文件
JS原生上传大文件显示进度条-php上传文件 在php.ini修改需要的大小: upload_max_filesize = 8M post_max_size = 10M memory_li ...
- js+分布上传大文件
文件夹上传:从前端到后端 文件上传是 Web 开发肯定会碰到的问题,而文件夹上传则更加难缠.网上关于文件夹上传的资料多集中在前端,缺少对于后端的关注,然后讲某个后端框架文件上传的文章又不会涉及文件夹. ...
- django 解析上传xls文件
1.解析上传数据 class DataUploadAPIView(APIView): # authentication_classes = (JSONWebTokenAuthentication, S ...
- js获取上传的文件并用ajax提交
<form id="form1" name="form1" encType="multipart/form-data" method= ...
- js分片上传大文件,前端代码
首先导入jQuery.form.js文件,下面src是相对于改js文件位置, <script type="text/JavaScript" src="jquery/ ...
- python发送post请求上传文件,无法解析上传的文件
前言 近日,在做接口测试时遇到一个奇葩的问题. 使用post请求直接通过接口上传文件,无法识别文件. 遇到的问题 以下是抓包得到的信息: 以上请求是通过Postman直接发送请求的. 在这里可以看到消 ...
- Java 用jxl读取excel并保存到数据库(此方法存在局限,仅限本地电脑操作,放在服务器上的项目,需要把文件上传到服务器,详细信息,见我的别的博客)
项目中涉及到读取excel中的数据,保存到数据库中,用jxl做起来比较简单. 基本的思路: 把excel放到固定盘里,然后前段页面选择文件,把文件的名字传到后台,再利用jxl进行数据读取,把读取到的数 ...
- js获取上传的文件名称
<input name="file_" type="file" id="file_" size="100" /&g ...
- tornado上传大文件以及多文件上传
tornado上传大文件问题解决方法 tornado默认上传限制为低于100M,但是由于需要上传大文件需求,网上很多说是用nginx,但我懒,同时不想在搞一个服务了. 解决方法: server = H ...
随机推荐
- JQuery 修改用户信息
JQuery 修改用户信息,多项选择,赋值,框架: https://www.h-ui.net/v3.shtml $(data.data.roleList).each(function (i, val) ...
- Problem B - Card Constructions (构造)
题意: 你可以用图示的方法建造金字塔,但是每一次都要建最大的金字塔,问最后能建几个金字塔. 思路: 我们可以发现对于每一个金字塔都是两边增加了两天边,然后中间行数− 1 -1−1个三角形,所以就可以求 ...
- JSONObject--- JSON---与bean对象的转换
1.对象PO转json-string: String json = JSON.toJSONString(customerBueventAccountPO); 1.可能用到的jar宝: json-li ...
- 数字孪生 3D 风电场,智慧风电之海上风电
前言 截止 2021 年,全球已有 127 个国家做出了"碳中和"的承诺,能源低碳转型和实现碳中和已经成为全球共同的战略目标.根据权威机构预测,到 2050 年,可再生能源发电将占 ...
- 1 分钟在 Serverless 上部署现代化 Deno Web 应用
作者 | 连喆人(掌上乾坤公司) 本文选自 "Serverless 函数计算征集令" 征文 利用 Serverless 的水平扩展与按量付费优势, 结合自定义运行时, 实现 Web ...
- 二、docker的安装和镜像管理
系列导航 一.docker入门(概念) 二.docker的安装和镜像管理 三.docker容器的常用命令 四.容器的网络访问 五.容器端口转发 六.docker数据卷 七.手动制作docker镜像 八 ...
- Spring的@Async使用防坑
很多人会直接只用@Async来执行异步操作.但是这里面有一个问题,如果都是用spring的默认实现,是有坑的. 当我们开启 EnableAsync 只有就使用Async来执行异步操作了. 走JDK的动 ...
- apache-jmeter-5.6.3版本报错:errorlevel=1的解决办法
一.背景: 今天遇到了apache-jmeter-5.6.3版本,下载解决后,打开bin下的:jmeter.bat报错 二.解决方法: 尝试解决了jmeter.bat的内存占用还是没有解决 最终发现 ...
- spring--CGLIB动态代理的实现原理
CGLIB(Code Generation Library)是一个强大的.高性能.高质量的代码生成库,它可以在运行时扩展 Java 类和实现 Java 接口.CGLIB 动态代理是基于继承的方式来实现 ...
- Go-测试-testing