zoukankan      html  css  js  c++  java
  • 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('文件格式不正确');
                }
            },
    
  • 相关阅读:
    网络问题排查
    SpringBoot 自定义注解清除缓存
    MYSQL外键的使用以及优缺点
    Java List
    黑客帝国代码雨
    前端接收字节数据流,显示图片
    何为熔断降级
    spring的线程
    window.open 与 iframe
    js 全部替换
  • 原文地址:https://www.cnblogs.com/IwishIcould/p/14136881.html
Copyright © 2011-2022 走看看