我需要得到一个Android APK的包名。我已经尝试解压缩APK和读取AndroidManifest.xml文件的内容,但它似乎不是一个文本文件。
如何提取APK的包名?
我需要得到一个Android APK的包名。我已经尝试解压缩APK和读取AndroidManifest.xml文件的内容,但它似乎不是一个文本文件。
如何提取APK的包名?
当前回答
你可以通过以下方式获取包名:
packageManager.getPackageArchiveInfo(apkFilePath, 0)?.packageName
其他回答
aapt dump badging <path-to-apk> | grep package:\ name
你可以使用分析APK…在Android Studio的Build菜单中,它将在新窗口的顶部显示包的名称。
在Mac:
方式1:
zgong$ /Users/zgong/Library/Android/sdk/build-tools/29.0.3/aapt dump badging ~/Downloads/NonSIMCC-151-app-release-signed.apk
package: name='com.A.B' versionCode='2020111801' versionName='1.0.40' compileSdkVersion='29' compileSdkVersionCodename='10'
sdkVersion:'24'
targetSdkVersion:'29'
......
方式2:
/Users/zgong/Library/Android/sdk/build-tools/29.0.3/aapt2 dump packagename ~/Downloads/NonSIMCC-151-app-release-signed.apk
com.A.B
你可以通过以下方式获取包名:
packageManager.getPackageArchiveInfo(apkFilePath, 0)?.packageName
一个非常简单的方法是使用apkanalyzer。
apkanalyzer manifest application-id "${_path_to_apk}"