如何从Android环境中的Android应用程序中的apk文件获取应用程序或包信息

Ale*_*lex 18 android apk

是否可以从apk文件获取有关包或应用程序的任何信息而无需在Android环境中安装它?

小智 92

$ aapt dump badging <path-to-apk>
Run Code Online (Sandbox Code Playgroud)

  • 这完美地回答了这个问题. (4认同)

Håv*_*hus 22

PackageManager类中查看此方法:

public PackageInfo getPackageArchiveInfo(String archiveFilePath, int flags)
Run Code Online (Sandbox Code Playgroud)

检索有关包归档文件中定义的应用程序包的整体信息

可能对你有帮助;)


Sam*_*sen 8

apk文件实际上只是一个具有不同名称的zip存档.将x.apk重命名为x.zip,其中x是文件的名称,您可以使用任何zip工具打开它.这真的取决于你是否可以在apk文件中找到它的信息.我可以说你可以访问AndroidManifest.xml文件,其中以相当可读的形式存储关于应用程序等访问权限的关键信息,前提是你知道你在寻找什么.你想找到什么?如果你正在寻找自述或其他什么,那么你几乎肯定不会在那里找到它.

  • 每个xml文件都是二进制文件或类似的内容0300 0800 e808 0000 0100 1c00 b401 0000 1800 0000 0000 0000 0001 0000 7c00 0000 (6认同)
  • 我正在寻找类似于PackageManager.getPackageInfo(http://developer.android.com/reference/android/content/pm/PackageManager.html#getPackageInfo%28java.lang.String,%20int%29)的东西但是对于apk文件.我需要这个我的Android应用程序,所以从二进制形式解压缩和转换AndroidManifest.xml不是最好的方式(恕我直言). (5认同)