chenquincy / app-info-parser

A javascript parser for parsing .ipa or .apk files. IPA/APK文件 js 解析器
MIT License
492 stars 116 forks source link

apk 中 icon 命名不规范,导致获取的 icon 不是不是最清晰的 #88

Closed snowtreetree closed 1 year ago

snowtreetree commented 1 year ago

apk 包 icon 命名不规范,导致获取的 icon 不是不是最清晰的,不太确定是不是可以将 findApkIconPath 函数替换掉,如下:

Promise.all(apkInfo.application.icon.map(iconPath => this.getEntry(iconPath))).then(icons => {
  const iconBuffer = icons.sort((a, b) => b.length - a.length)[0]
  apkInfo.icon = iconBuffer ? getBase64FromBuffer(iconBuffer) : null
  resolve(apkInfo)
}).catch(e => {
  apkInfo.icon = null
  resolve(apkInfo)
  console.warn('[Warning] failed to parse icon: ', e)
})

image

chenquincy commented 1 year ago

@snowtreetree 之前遇到过 icon 中包含其他图片的情况。这么改没法确保获取的图标是对的。

snowtreetree commented 1 year ago

好吧。 包含了其他图片的话,findApkIconPath 也可能会出错(命名不规范 && apkInfo.application.icon[0] 不是 icon) ,不是在抬杠,只是想了解下场景,🥲。 看到其他 issue 里面提到知乎的包,icon 里面还有 .xml 类型的。

chenquincy commented 1 year ago

确实有时候会有问题,但是暂时没太多时间去完善这个东西。我看 issue 中有个老哥有想法来做这个事情,到时候看看做的咋样。

chenquincy commented 1 year ago

Duplicate of #91