java解析apk安装包信息

网上找了些关于解析apk安装包的博客:

但是是在非 WEB 项目下运行,但我们公司项目需求是web项目下解析apk安装包信息,然后供其他系统调用时候参考apk是不是需要升级,所有不能够用网络上的代码,和jar包来解析,通过自己改装,基本能满足需求,下面是代码:


特别注意:这里需要一个appt.exe的可执行文件需要放在C:/   盘下,也可以自己指定目录位置。


ApkInfo.java

package cn.testApk;
/*
 * @(#)ApkInfo.java		       version: 1.0 
 * Date:2012-1-10
 *
 * Copyright (c) 2011 CFuture09, Institute of Software, 
 * Guangdong Ocean University, Zhanjiang, GuangDong, China.
 * All rights reserved.
 */


import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * <B>ApkInfo</B>
 * <p>
 * 该类封装了一个Apk的信息。包括版本号,支持平台,图标,名称,权限,所需设备特性等。
 * </p>
 * 
 * @author CFuture.Geek_Soledad(66704238@51uc.com)
 */
public class ApkInfo {
	public static final String APPLICATION_ICON_120 = "application-icon-120";
	public static final String APPLICATION_ICON_160 = "application-icon-160";
	public static final String APPLICATION_ICON_240 = "application-icon-240";
	public static final String APPLICATION_ICON_320 = "application-icon-320";
	/**
	 * apk内部版本号
	 */
	private String versionCode = null;
	/**
	 * apk外部版本号
	 */
	private String versionName = null;
	/**
	 * apk的包名
	 */
	private String packageName = null;
	/**
	 * 支持的android平台最低版本号
	 */
	private String minSdkVersion = null;
	/**
	 * apk所需要的权限
	 */
	private List<String> usesPermissions = null;

	/**
	 * 支持的SDK版本。
	 */
	private String sdkVersion;
	/**
	 * 建议的SDK版本
	 */
	private String targetSdkVersion;
	/**
	 * 应用程序名
	 */
	private String applicationLable;
	/**
	 * 各个分辨率下的图标的路径。
	 */
	private Map<String, String> applicationIcons;

	/**
	 * 程序的图标。
	 */
	private String applicationIcon;

	/**
	 * 暗指的特性。
	 */
	private List<ImpliedFeature> impliedFeatures;

	/**
	 * 所需设备特性。
	 */
	private List<String> features;

	public ApkInfo() {
		this.usesPermissions = new ArrayList<String>();
		this.applicationIcons = new HashMap<String, String>();
		this.impliedFeatures = new ArrayList<ImpliedFeature>();
		this.features = new ArrayList<String>();
	}

	/**
	 * 返回版本代码。
	 * 
	 * @return 版本代码。
	 */
	public String getVersionCode() {
		return versionCode;
	}

	/**
	 * @param versionCode
	 *            the versionCode to set
	 */
	public void setVersionCode(String versionCode) {
		this.versionCode = versionCode;
	}

	/**
	 * 返回版本名称。
	 * 
	 * @return 版本名称。
	 */
	public String getVersionName() {
		return versionName;
	}

	/**
	 * @param versionName
	 *            the versionName to set
	 */
	public void setVersionName(String versionName) {
		this.versionName = versionNa
  • 0
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值