zoukankan      html  css  js  c++  java
  • 13.【原创】JS读取apk安装包的信息,做应用上传

    最近接到一个需求:在后台管理平台集成安卓app包上传功能,要求能够读出apk包的图标,包名,版本号等信息。

    于是上网查了一下相关资料。发现大部分都是使用accept这个模块插件实现的。查了一下其相关文档,还是不够简洁,有点麻烦。后来终于找到了一个比较好用的第三方node模块,而且还可以单独提取js文件用于前端解析。

    地址:https://github.com/chenquincy/app-info-parser

    前端引入下图所指的文件,参照示例即可。

    示例:

    需要注意的是,这个模块是已经在npm上做了托管的,如果后台使用node的话,也是可以使用的哟(PS:不支持IE浏览器)。

    在开发中还有一点需要注意的是,这个插件读取图标的时候,读取的是base64的编码格式,如果要做图片上传,要么就得在服务器端转成图片文件,要么在前端直接转成图片之后再上传。我采用的是在前端转换。方法如下:

    /* base64格式图片转换为文件 */
    function dataURLtoFile(dataurl, filename = 'file') {
        var arr = dataurl.split(',')
        var mime = arr[0].match(/:(.*?);/)[1]
        var suffix = mime.split('/')[1]
        var bstr = atob(arr[1])
        var n = bstr.length
        var u8arr = new Uint8Array(n)
        while (n--) {
            u8arr[n] = bstr.charCodeAt(n)
        };
        return new File([u8arr], `${filename}.${suffix}`, {
            type: mime
        });
    };

  • 相关阅读:
    linux脚本启动停止一个jar
    如何突破各种防火墙的防护 [转]
    linux查看端口占用
    网页标题图标添加
    Go语言的一些使用心得
    kubernetes系列之ConfigMap使用方式
    Kubernetes因限制内存配置引发的错误
    Kubernetes系列之理解K8s Service的几种模式
    kubernetes中的Pause容器如何理解?
    Kubernetes系列之Helm介绍篇
  • 原文地址:https://www.cnblogs.com/Nick-Hu/p/10947779.html
Copyright © 2011-2022 走看看