Home

Awesome

app-info-parser

app-info-parser is a parser for parsing .ipa or .apk files. It will return the information with json from AndroidManifest.xml or Info.plist.

Support

Installation

npm install app-info-parser
# or yarn
yarn add app-info-parser

Getting started

NPX Use

You can use app-info-parser by npx, if you don't want to install it. Run this command in your terminal:

npx app-info-parser -f <file-path> -o <output-path>
argumenttypedescription
-fstringThe path of file that you want to parse.
-ostringThe output path that you want to save the parse result. Default is "./result.json"

NPM Use

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

CDN Use

<input type="file" name="file" id="file" onchange="fileSelect()">
<script src="//unpkg.com/browse/app-info-parser/dist/app-info-parser.min.js"></script>
<script>
function fileSelect () {
  const files = document.getElementById('file').files
  const parser = new window.AppInfoParser(files[0])
  parser.parse().then(result => {
    console.log('app info ----> ', result)
    console.log('icon base64 ----> ', result.icon)
  }).catch(err => {
    console.log('err ----> ', err)
  })
}
</script>

Demand loading

You can use demand loading, when you only need one 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)
})

API Referrer

AppInfoParser | ApkParser | IpaParser

Buy Me A Coffee

Open source is not easy, you can buy me a coffee. Note your name or github id so I can add you to the donation list.

<table style="margin-left: auto; margin-right: auto;"> <tr> <td style="padding: 50px;text-align:center;"> <p style="font-size:25px;">Wechat Pay</p> <img src="https://user-images.githubusercontent.com/10976378/61703600-7e66f900-ad74-11e9-9eab-9ec57d1cf7e0.png"> </td> <td style="padding: 50px;text-align:center;"> <p style="font-size:25px;">Ali Pay</p> <img src="https://user-images.githubusercontent.com/10976378/61703625-9179c900-ad74-11e9-936c-9cf5b7d59aa7.png"> </td> </tr> </table>

Donation List

❤️ Thanks these guys for donations. Contact me with <a href="mailto:mail@quincychen.cn" target="_blank" rel="noopener noreferrer nofollow" title="EMail">email</a>, if you had donated but not on the list.

DonorsAmountTime
*明¥1002023-03-29 10:16
*明¥1002021-06-17 17:29
=*=¥6.662021-05-24 15:12
*学¥6.662021-01-08 15:32
y*n¥6.662020-08-26 12:10
*明¥1002020-08-25 11:35
*肖¥6.662020-07-31 19:54
O*s¥12020-05-26 16:01
**豪¥6.662020-03-05 20:14
*大¥6.662020-02-25 16:55
*风¥12020-01-03 15:36
黄灰红¥12019-12-10 17:53
zona.zhou¥12019-10-20 23:18
*。¥662019-10-20 22:45

License

MIT

Resources

FAQ

Build/Parse error with vite?

See this issue of vite, vite is not going support node global builtins and node specific api's on the client. Some of app-info-parser's deps didn't support browser env, most of them without maintain, so it can't be resolved.

Just use app-info-parser by CDN using(import by script element), don't use it with module import in vite.