几种获取应用程序/apk安装包版本信息的方法
获取到PackageInfo之后,那么包名,版本号什么的都可以得到咯
一、应用程序得到自己的版本信息
/**
* 得到当前应用版本名称的方法
*
* @param context
* :上下文
* @throws Exception
*/
public static String getVersionName(Context context) throws Exception {
// 获取packagemanager的实例
PackageManager packageManager = context.getPackageManager();
// getPackageName()是你当前类的包名
PackageInfo packInfo = packageManager.getPackageInfo(context.getPackageName(), 0);
String version = packInfo.versionName;
return version;
}二、应用程序获得其他应用程序的版本信息(根据包名)
那从代码来看,其实一方法也可以直接只用二方法得到
/**
* 获取指定包名的版本号
*
* @param context
* 本应用程序上下文
* @param packageName
* 你想知道版本信息的应用程序的包名
* @return
* @throws Exception
*/
public static String getVersionName(Context context, String packageName) throws Exception {
// 获取packagemanager的实例
PackageManager packageManager = context.getPackageManager();
PackageInfo packInfo = packageManager.getPackageInfo(packageName, 0);
String version = packInfo.versionName;
return version;
}三、从SD卡等路劲获取某安装包(apk文件)的版本信息
/**
* 从一个apk文件去获取该文件的版本信息
*
* @param context
* 本应用程序上下文
* @param archiveFilePath
* APK文件的路径。如:/sdcard/download/XX.apk
* @return
*/
public static String getVersionNameFromApk(Context context, String archiveFilePath) {
PackageManager pm = context.getPackageManager();
PackageInfo packInfo = pm.getPackageArchiveInfo(archiveFilePath, PackageManager.GET_ACTIVITIES);
String version = packInfo.versionName;
return version;
}assets.setConfiguration(0, 0, null, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
Build.VERSION.RESOURCES_SDK_INT);
parser = assets.openXmlResourceParser(cookie, ANDROID_MANIFEST_FILENAME);追踪源码可以看到,系统其实是对该apk文件的AndroidManifest.xml文件进行解析
相关推荐
yangChong 2020-08-03
zyygive 2020-07-29
yangChong 2020-07-29
绿豆饼 2020-07-28
adb shell cd system/app rm *.apk21. 获取管理员权限: adb root22. 启动Activity: adb shell am start -n 包名/包名+类名。
蓝天梦 2020-07-28
rookieding 2020-07-26
zyygive 2020-06-11
zyygive 2020-06-09
安辉 2020-05-27
KarlMarxs 2020-05-15
xilove0 2020-04-20
laijunfeng 2020-04-07
KarlMarxs 2020-02-23
Soinice 2020-02-18
zyygive 2020-02-17
ProgrammerFan00 2020-02-16
Ubuntu黑客 2020-02-14
89590098 2020-02-01