如何在android环境之外以编程方式从apk文件中获取android应用程序名称?我试过解析androidmanifest.xml,但它只显示包名(有时可能不是很有用)
答案 0 :(得分:1)
如果您使用的是Linux,此命令将为您提供应用程序名称:
aapt dump badging your.apk | sed -n "s/^application-label:'\(.*\)'/\1/p"
您必须先安装aapt
。
答案 1 :(得分:0)
也可以使用apktool完成。
#!/bin/sh
if [ -z "$1" ]; then echo ${0##*/} useage: ${0##*/} /path/to/your.apk; exit; fi
APKTOOL=$(which apktool apktool.sh | head -1); if [ -z "$APKTOOL" ]; then echo "Error: Could not locate apktool wrapper script."; exit; fi
TMPDIR="/tmp/apktool"
rm -Rf $TMPDIR
$APKTOOL d -q -f -s --force-manifest -o $TMPDIR $1
LABEL=$(cat $TMPDIR/res/values/strings.xml | grep 'string name="title"' | sed -e 's/.*">//' -e 's/<.*//')
rm -Rf $TMPDIR
echo ${LABEL}