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 ...
随机推荐
- 鸿蒙轻内核源码分析:虚拟文件系统 VFS
本文分享自华为云社区<鸿蒙轻内核M核源码分析系列二一 01 虚拟文件系统VFS>,作者:zhushy . VFS(Virtual File System)是文件系统的虚拟层,它不是一个实际 ...
- PPT 快速生成图片墙
图片墙有什么用? 掌握以后,做封面就不慌了.减轻了找素材的压力 手动排列 插入任意大小矩形,好处,不需要对插入的张图片单独调整大小 右击进行组合,然后拉面整个PPT页面 插入8张图片 设置蒙版 画个大 ...
- 【HZERO】班翎工作流
班翎工作流 工作流流程 流程分类定义 接口管理 long类型写0 字符串写空 流程定义[画流程图] 人工节点-添加审批人规则 空-全局事件-选回调接口 我的待办 流程平台-我参与的流程 发起流程:wo ...
- POJ 1417 True Liars (并查集+DP)
Time Limit: 1000MS Memory Limit: 10000K Total Submissions: 1556 Accepted: 457 Description After havi ...
- Spark 数据倾斜及其解决方案
本文首发于 vivo互联网技术 微信公众号 https://mp.weixin.qq.com/s/lqMu6lfk-Ny1ZHYruEeBdA 作者简介:郑志彬,毕业于华南理工大学计算机科学与技术(双 ...
- C#设计模式13——建造者模式的写法
1. 什么是建造者模式? 建造者模式是一种创建型设计模式,它通过将一个复杂的对象分解为多个简单的对象并按照一定的顺序进行组装而创建出一个复杂的对象.这样可以使得构造过程更加灵活,同时也可以隐藏创建过程 ...
- 线段树的区间更新 hdu 1698
***第一次写的果断超时,所以百度了一下,知道我写的每一次都要递归最底层,这样会花费很多时间,第二次写得线段树的区间更新,因为一个条件写错了,真是让我坑到死, 这样区间相同的不必更新,省了很多时间.. ...
- php开发之文件读取、写入
前言 续之前的系列,这里php开发的文件操作的内容读取以及文本写入的部分 文件读取代码的实现 css代码 本系列的php博客都是这个css,名字都是index.css /* css样式初始化 */ * ...
- Redis 哨兵模式高可用
本文为博主原创,未经允许不得转载: 目录: 1. 哨兵 Sentinel 介绍 2. 哨兵架构特点及工作原理 3. redis哨兵架构搭建步骤 4. 哨兵数据丢失 5. spring boot 整合 ...
- 05-逻辑仿真工具VCS-执行过程
Verilog Simulation Event Queue 主要了解VCS是如何处理交给它的代码的 Verilog的仿真事件队列,介绍VCS如何处理交给它的代码.VCS是Synopsys公司的,支持 ...