Appleex
Appleex
Published on 2024-06-29 / 35 Visits
0
0

前端 | 前端解析安装包获取信息方法

前端解析安装包获取信息方法

前言

对于有上传文件需求的项目,无非是考虑这件事情由哪一方来主导。如果是后端主导,一般是前端直接上传文件(不做任何处理),再由后端接收后处理(解析文件、存储文件信息、转存文件等),这样大部分的逻辑都在后端;如果是前端主导,一般是前端解析文件,把相关信息推给后端,当然如果是这样那跟前者好像没区别,前端主导的优势在于文件的转存这种情景(一般是上传到文件服务器或者云存储之类)前端解析拿到文件信息后,一方面可以将文件直接推到文件服务器或云存储,另一方面将部分信息发送给后端做存储,这样后端的逻辑就不会太复杂,效率更高。

介绍

app-info-parser 是一款 .ipa.apk 程序包解析器。它将从 AndroidManifest.xml or Info.plist 获取到相关信息并以 json 的格式返回。

GitHub:GitHub - chenquincy/app-info-parser: A javascript parser for parsing .ipa or .apk files. IPA/APK文件 js 解析器

NPM:app-info-parser - npm

安装

npm install app-info-parser

或者 yarn

yarn add app-info-parser

使用

  • ApkParser
const ApkParser = require('app-info-parser/src/apk')
const parser = new ApkParser('../packages/test.apk')
parser.parse().then(result => {
  console.log('app info ----> ', result)
  console.log('icon base64 ----> ', result.icon)
}).catch(err => {
  console.log('err ----> ', err)
})
  • IpaParser
const IpaParser = require('app-info-parser/src/ipa')
const parser = new IpaParser('../packages/test.ipa')
parser.parse().then(result => {
  console.log('app info ----> ', result)
  console.log('icon base64 ----> ', result.icon)
}).catch(err => {
  console.log('err ----> ', err)
})

FAQ

如何处理在 vite 无法使用或者报错问题

Not compatible with Electron: Node.js internal modules truncated · Issue #2985 · vitejs/vite · GitHub

vue 引入 app-info-parser 报错的处理办法

vue引入app-info-parser报错的处理办法-CSDN博客

参考文献


Comment