纯java从apk文件里获取包名、版本号、icon
简洁:不超过5个java文件
依赖:仅依赖aapt.exe
支持:仅限windows
功能:用纯java获取apk文集里的包名,版本号,图标文件【可获取到流直接保存到文件系统】
原理:比较上一篇文章里通过反编译然后解析AndroidManifest.xml的方式,此种方式更加简单,通过模拟执行aapt截取cmd输出并整理获取信息。
附件为源码,test/demo 为演示,output下为编译后的jar文件。
参考开源项目:
http://code.google.com/p/cfuture09-apkutil/
本项目在该项目上进行了扩展,支持了图标的提取。
代码片段:
纯java从apk文件里获取包名、版本号、icon的更多相关文章
- android 利用 aapt 解析 apk 得到应用名称 包名 版本号 权限等信息
		在上传各大市场时发现 apk 上传后能自动解析出应用名称.包名.版本号.使用权限等信息,所以就研究了一下 1 直接解压 apk 解析 AndroidManifest.xml 是不行的,因为 apk ... 
- java从apk文件获取包名、版本号、icon
		依赖:仅依赖aapt.exe 支持:仅限windows 功能:用纯java获取apk文集里的包名,版本号,图标文件[可获取到流直接保存到文件系统] 原理:比较上一篇文章里通过反编译然后解析Androi ... 
- Java 获取APK安装程序的包名
		Java 获取APK安装程序的包名核心的两个类: ResPackage ApkDecoder package com.temobi.util; import java.io.File; impo ... 
- apk去广告工具(利用apktool去除apk文件里的广告)
		基本知识 apk安装包的文件结构 以知名桌面软件“LauncherPro”为例,apk安装包文件目录: 文件目录如下: - META-INF - res - anim - color - drawab ... 
- Android Apk获取包名和Activity名称
		一.使用aapt(Android Asset Packaging Tool)工具获取: 1.配置Android环境: a.添加build-tools/android路径到系统环境变量的中Path中,注 ... 
- 获取apk package name(包名)以及activity name
		通过adb 查看最上层成activity名字: linux: adb shell dumpsys activity | grep "mFocusedActivity" window ... 
- aapt命令获取apk具体信息(包名、版本号号、版本号名称、兼容api级别、启动Activity等)
		aapt命令获取apk具体信息(包名.版本号号.版本号名称.兼容api级别.启动Activity等) 第一步:找到aapt 找到sdk的根文件夹,然后找到build-tools文件夹.然后会看到一些b ... 
- eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式。 后者无法自动编译java 成class文件到classes包下。
		eclipse新建web项目,发布 run as 方式和 new server然后添加项目方式. 后者无法自动编译java 成class文件到classes包下. 建议使用run as - run ... 
- asp.net 获取网站根目录总结  Global.asax文件里获取获取网站根目录
		1: 获取网站根目录的方法有几种如: Server.MapPath(Request.ServerVariables["PATH_INFO"])Server.MapPath(&qu ... 
随机推荐
- django构建blog--页面部分(eclipse+pydev)
			本文介绍的是在eclipse+pydev 平台下,利用django 搭建blog的第2部分:页面部分(主要涉及3个部分:模板.视图.URL模式) 篇幅1:创建模板 blog目录下新建一个文件夹:tem ... 
- 【BZOJ】【1293】【SCOI2009】生日礼物
			二分/堆 求一个最小的区间使得包含所有的颜色(并不一定只出现一次)$n\leq 10^6$ 我想的做法是:二分这个最小的长度(满足单调性……好久才想到QAQ),然后O(n)判断是否有可行的区间,这一步 ... 
- NYOJ-214 单调递增子序列(二)  AC                                                    分类:            NYOJ             2014-01-31 08:06    233人阅读    评论(0)    收藏
			#include<stdio.h> #include<string.h> int len, n, i, j; int d[100005], a[100005]; int bin ... 
- 先进的自动布局工具箱(autolayout)
			原文:Advanced Auto Layout Toolbox 这篇文章并没有具体介绍自动布局的一些基本概念,主要讲解了一些高级的使用方法和调试技巧,文中有的句子比较长,意思也有点难懂,所以需要静下心 ... 
- AngularJs学习笔记--directive
			原版地址:http://code.angularjs.org/1.0.2/docs/guide/directive Directive是教HTML玩一些新把戏的途径.在DOM编译期间,directiv ... 
- jQuery中的height()、innerheight()、outerheight()的区别总结
			在前端jQuery代码中突然看到outerheight(),第一感觉就是,这是什么鬼?然后仔细查阅了一下,居然发现还有这么多相似的东西. 在jQuery中,获取元素高度的函数有3个,它们分别是heig ... 
- Assetbundle的杂七杂八
			使用Assetbundle时可能遇到的坑 一 24 十一郎未分类 No Comments 转自 http://www.unitymanual.com/blog-3571-132.html 1.Edit ... 
- socket网络编程中read与recv区别
			socket网络编程中read与recv区别 1.read 与 recv 区别 read 原则: 数据在不超过指定的长度的时候有多少读多少,没有数据则会一直等待.所以一般情况下:我们读取数据都需要采用 ... 
- HDU5569/BestCoder Round #63 (div.2) C.matrix    DP
			matrix Problem Description Given a matrix with n rows and m columns ( n+m is an odd number ), at fir ... 
- Java:Comparator接口
			public interface Comparator<T> 接口里面的方法 int compare(T o1, T o2) o1 > o2 返回 1 o1 = o2 返回 0 o1 ... 
