apkutil

解析apk安装包的工具
授权协议 Apache
开发语言 Java
所属分类 手机/移动开发、 手机开发包
软件类型 开源软件
地区 国产
投 递 者 詹弘毅
操作系统 Android
开源组织
适用人群 未知
 软件概览

apkUtil是一个用来解析apk安装包的工具,通过它可以获取一个安装包的图标、程序名、所需android平台,权限等信息,并将其转换为java对象。该工具依赖于aapt工具,目前仅支持在windows平台上运行。 程序在运行时,会创建一个进程,用于运行aapt。默认的aapt的路径为jar包相对目录的lib/aapt。如果路径更改,请使用setAaptPath方法。

新的版本使用方法如下:

try {
                        String demo = "E:/androidApk/2012/05/百宝工具箱/1.0/signed/Toolbox-360.apk";
                        if (args.length > 0) {
                                demo = args[0];
                        }
                        ApkInfo apkInfo = new ApkUtil().getApkInfo(demo);
                        System.out.println(apkInfo);
                } catch (Exception e) {
                        e.printStackTrace();
                }

输出结果如下:

ApkInfo [versionCode=1,
  versionName=1.0,
  packageName=cfuture.xiaozhi.toolbox,
  minSdkVersion=null,
  usesPermissions=[android.permission.ACCESS_FINE_LOCATION, android.permission.ACCESS_NETWORK_STATE, android.permission.ACCESS_WIFI_STATE, android.permission.INTERNET, android.permission.MOUNT_UNMOUNT_FILESYSTEMS, android.permission.READ_LOGS, android.permission.READ_PHONE_STATE, android.permission.WRITE_EXTERNAL_STORAGE, android.permission.READ_EXTERNAL_STORAGE],
  sdkVersion=4,
  targetSdkVersion=null,
  applicationLable=百宝工具箱,
  applicationIcons={application-icon-240=res/drawable-hdpi/toolbox.png, application-icon-160=res/drawable-mdpi/toolbox.png, application-icon-120=res/drawable-ldpi/toolbox.png},
  applicationIcon=res/drawable-mdpi/toolbox.png,
  impliedFeatures=[Feature [feature=android.hardware.location, implied=requested a location access permission], Feature [feature=android.hardware.location.gps, implied=requested android.permission.ACCESS_FINE_LOCATION permission], Feature [feature=android.hardware.wifi, implied=requested android.permission.ACCESS_WIFI_STATE, android.permission.CHANGE_WIFI_STATE, or android.permission.CHANGE_WIFI_MULTICAST_STATE permission], Feature [feature=android.hardware.touchscreen, implied=assumed you require a touch screen unless explicitly made optional], Feature [feature=android.hardware.screen.landscape, implied=one or more activities have specified a landscape orientation], Feature [feature=android.hardware.screen.portrait, implied=one or more activities have specified a portrait orientation]],
  features=[android.hardware.location, android.hardware.location.gps, android.hardware.wifi, android.hardware.touchscreen, android.hardware.screen.landscape, android.hardware.screen.portrait]]

注意:以前的apkUtil 0.x版本已经弃用,原因是其效率低下,且获得的信息较少。

  • public class ApkUtils { /** 安装一个apk文件 */ public static void install(Context context, File uriFile) { Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri.

  • ApkUtil/ ApkUtil/.classpath ApkUtil/.project ApkUtil/.settings/ ApkUtil/.settings/org.eclipse.jdt.core.prefs ApkUtil/bin/ ApkUtil/bin/Demo.class ApkUtil/bin/com/ ApkUtil/bin/com/sinaapp/ ApkUtil/bin/c

  • 一、 读取文件的信息 和众多的项目一样,在苹果和安卓的项目中,也有很多的版本信息,那么这些都存储在哪里了呢?在每个我们打好的包里面,其实都有一个专门标注版本信息和版权,描述的文件,如果我们用winrar或者其他解压缩软件把安装包解压缩之后,我们可以得到里面的很多信息,然后一般我们都会在软件的最外层发现一个.xml的文件来看到我们的版本信息(一般都有加密)。 所以我们获得版本信息的来源就是要从安装包

  • 经常需要程序去读取APK的信息,网上很多介绍类似于Zip解压缩之类的方法去获取Androidmanifest.xml里面的信息,但是这种方法并不可取,因为里面取到的有可能是“引用ID”。我们可以用ApkUtil工具类。 1.下载ApkUtil和aapt工具 ApkUtil下载地址列表 https://code.google.com/p/cfuture09-apkutil/downloads/lis

 相关资料
  • OpenResty 官方 APK 包仓库提供下面的 apk 包 (适用于 Alpine 系统)。 openresty 这是用于核心 OpenResty 服务的生产版本。 这个包注册在 /usr/bin/openresty, 它是 OpenResty 的 nginx 可执行文件 /usr/local/openresty/nginx/sbin/nginx 的符号链接。 默认的,你应该能在你的 PATH

  • 我试图将我的应用程序安装到Android L Preview Intel Atom虚拟设备中,它失败了,错误: install_failed_no_matching_abis

  • 本文向大家介绍php自定义apk安装包实例,包括了php自定义apk安装包实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了php自定义apk安装包的方法,分享给大家供大家参考。具体实现方法如下: 众所周知,apk格式安装文件是android智能系统的安装文件,下面我们来看一个利用php实现自定义apk安装包实例。 一、需求: 需要实现对产品进行一次推荐好友安装的活动,每个会员下载自己的

  • 我是android开发新手。我成功生成了签名apk。它成功安装在android更高版本中。但是当我尝试在android kitkat版本中安装时,一旦我们单击“安装”按钮,它就会失败而没有任何错误消息。通过命令提示符尝试使用adb时,应用程序成功安装,安装调试也正常。“Kitkat中的直接apk安装失败”请帮助

  • 我创建了一个基本的Android应用程序作为实习。创建了它的APK并尝试通过USB电缆将其连接到笔记本电脑并用作模拟器在我的手机上运行,它运行良好。我的Android操作系统版本是Oreo,我尝试在Lollypop上做同样的事情,但它仍然在执行。 当我通过电子邮件发送APK并尝试直接安装在设备上时,问题就来了,它给了我这个错误 解析包时出现问题 我不知道发生了什么,因为它是从Android Stu

  • 在前面的文章中,我们接触过很多个工厂对象,比如:SqlSessionFactory、ObjectFactory和ReflectoryFactory。 ObjectWrapperFactory也是一个工厂对象,他用于将普通的JAVA对象包装成ObjectWrapper对象。 在这里我将ObjectWrapper叫做对象包装器,因为ObjectWrapper对象的作用就是包装对象后为其提供统一的属性操