【发布时间】:2012-12-09 07:29:51
【问题描述】:
我想知道是否可以找到我从服务器下载的 apk 文件的版本? 我可以检索设备上安装的应用程序版本,但我想使用下载的 apk 文件版本检查设备上安装的应用程序版本。
【问题讨论】:
我想知道是否可以找到我从服务器下载的 apk 文件的版本? 我可以检索设备上安装的应用程序版本,但我想使用下载的 apk 文件版本检查设备上安装的应用程序版本。
【问题讨论】:
在安装之前,您无法轻松获取下载的 APK 文件的版本。
话虽如此,您可以解压缩 APK 文件(它只是一个 zip 文件)并解析 AndroidManifest.xml 以获取版本代码的值。 由于您提取的 AndroidManifest.xml 是一个二进制文件,因此您需要编写一些代码来解析它。这不像检查纯文本文件那么简单。
查看这篇文章,了解如何解析从 APK 中提取的 AndroidManifest。
How to parse the AndroidManifest.xml file inside an .apk package
【讨论】:
PackageManager manager = this.getPackageManager();
PackageInfo info = manager.getPackageInfo("com.whatsapp", 0);
String packageName = info.packageName;
int versionCode = info.versionCode;
String versionName = info.versionName;
用你的包名替换com.whatsapp。
【讨论】: