`
energykey
  • 浏览: 598086 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

java从apk文件里获取包名、版本号

 
阅读更多

测试代码:

 

package org.apkinfo.test;

import java.io.IOException;
import java.util.ArrayList;

import org.apkinfo.api.GetApkInfo;
import org.apkinfo.api.domain.ApkInfo;

public class GetApkInfoTest {
	public static void main(String[] args) {
		try {
			ArrayList<ApkInfo> listAPKInfo = GetApkInfo.listApkInfoByDir("D:\\DefaultApkTempSaveFolder\\3D风景动态壁纸\\");
			System.out.println(listAPKInfo);
			
			ApkInfo apkInfo = GetApkInfo.getApkInfoByFilePath("D:\\DefaultApkTempSaveFolder\\3G安卓市场\\com.jiubang.market.apk");
			System.out.println(apkInfo);
		} catch (IOException e) {
			e.printStackTrace();
		}
	}
}

 

 

 

运行结果:

 

 

[ApkInfo [packageName=cn.bighead.livewallpaper.fengjing3D123, versionName=1.4.7, versionCode=147]]

ApkInfo [packageName=com.jiubang.market, versionName=3.2.6, versionCode=35]

 

核心原理:解析apk文件里的AndroidManifest.xml

 

  • ant.jar (1.8 MB)
  • 下载次数: 917
分享到:
评论
17 楼 不笕了 2015-03-03  
    
16 楼 lauphai 2014-10-10  
获取的信息对不上啊
15 楼 energykey 2014-07-02  
u013910710 写道
楼主能发一下源码吗?

建议大家看看我另外一篇文章:http://energykey.iteye.com/blog/1856173

这个更简单,直接利用android sdk官方提供的工具aapt进行解析。

本文的这种方式还是有一些问题的。

aapt windows MAC LINUX都有对应版本的。
14 楼 u013910710 2014-06-18  
楼主能发一下源码吗?
13 楼 OfreeK 2014-06-13  
楼主,可以分享一下源码吗
12 楼 ycu0501 2014-04-21  
楼主,把ZipFile.close加上再放上来吧
11 楼 fxiaozj 2014-04-15  
不能运行,楼主!
10 楼 qq83833224 2014-03-27  
有个地方没有关闭文件句柄
9 楼 佑手轻扬 2014-03-26  
你好,能把源码发给我嘛。
能否得到apk的资源文件,例如图标。
多谢!
1009518044@qq.com
8 楼 seahlove 2013-09-17  
hello,你那个exe, 我代码部署到linux上,能执行么?
7 楼 energykey 2013-07-25  
counterm 写道
执行后,即使你程序中使用了stream.close(),但也不能关闭文件的占用,需要把zipFile要close()掉
谢谢反馈。
6 楼 counterm 2013-06-07  
执行后,即使你程序中使用了stream.close(),但也不能关闭文件的占用,需要把zipFile要close()掉
5 楼 antique 2013-05-03  
可以到到数字签名吗
4 楼 yuanhotel 2013-03-20  
你很强的,只是没源码,不过按你的思路做了一下
3 楼 hzl2012 2013-03-19  
不错,可以获取包名,版本名称,版本号 ,要是能获取应用名称,最小sdk版本支持,权限等信息就更好了
2 楼 liang498404031 2013-02-04  
下载下来,支持个
1 楼 cailizhe 2012-12-11  
可以得到软件名称 的吗

相关推荐

    java获取apk的包名版本信息

    在Java编程环境中,获取APK文件的包名和版本信息是一项常见的需求,特别是在自动化测试、应用管理或数据分析等场景中。APK是Android应用程序的安装包,它包含了应用的所有组件和资源。要从APK文件中提取这些元数据,...

    纯java读取apk文件信息(包括版本号,包名等)

    本教程将详细介绍如何使用纯Java来读取APK文件中的关键信息,如版本号和包名。 首先,我们需要了解APK文件的结构。一个APK文件本质上是一个ZIP格式的压缩包,我们可以用Java内置的`java.util.zip`库来处理。以下是...

    Java解析apk/ipa读取包名、版本名、版本号等等信息源码

    以上就是关于使用Java解析APK/IPA读取包名、版本名、版本号等信息的详细知识。通过理解这两种文件的结构以及Java的文件处理能力,你可以轻松地实现这些功能,并根据需要扩展到其他元数据的读取。希望这个指南对你...

    java 扫描apk获取包名、版本号、版本名称完整代码

    web端扫描apk获取包名、版本号、版本名称完整代码

    java环境,根据apk路径获取apk的信息(包名,版本号,版本名,权限,图标等信息)

    java环境获取apk的信息(包名,版本号,版本名,权限,图标等信息),可直接导入android studio跑通,查看main方法,把apk的地址复制进去,右键main方法执行即可(需配置aapt环境变量,sdk中build-tools文件夹下...

    java 获取apk包名和版本号

    总结,这个“ReadApk”项目提供了一种在Java环境中获取APK包名和版本号的方法,无论是从已安装的应用还是未安装的APK文件。这对于自动化测试、应用市场分析或者自定义应用管理工具都有一定的实用价值。通过深入理解...

    纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限...

    纯JAVA环境获取APK信息:包名,版本,版本号,大小,权限... 代码讲解地址:http://blog.csdn.net/chillax_li/article/details/41850863

    Java代码获取apk版本号示例,含必须的jar包

    获取APK版本号主要涉及到`PackageInfo`类,它是Android SDK的一部分,包含有关应用程序包的详细信息,如版本名、版本代码等。以下是一个简单的Java代码示例,演示如何获取APK的版本信息: ```java import android....

    java获取apk包名、版本、权限、图标、启动图等信息

    要获取包名,可以使用`PackageInfo`类。以下是一个简单的示例代码片段: ```java String apkPath = "/path/to/your/apk/file.apk"; Intent intent = new Intent(Intent.ACTION_VIEW); intent.setDataAndType(Uri....

    获取apk包名,版本号等信息的jar包

    这里提到的"获取apk包名,版本号等信息的jar包"(apkinfo.jar),则是一个Java库,专门用于读取未安装APK文件的元数据。使用这个库,开发者可以避免直接操作ZIP文件,简化了代码并提高了效率。 以下是如何使用这个...

    Apk包解析工具获取包名和版本等信息

    自己写了一个解析APK的工具,主要可以解析到APK包的版本名称,版本号,包名,ICON图片。有两个版本,分别支持32位系统和64位系统,前提是系统要有java环境。同时支持单个APK解析和多个APK解析。多个只需要指定文件夹...

    java解析apk文件

    Java作为一种跨平台的语言,可以用来解析这些APK文件,以获取其中的关键信息,如包名、项目名、版本号以及应用图标等。下面我们将详细介绍如何使用Java进行APK解析,以及在不同操作系统(macOS、Linux和Windows)中...

    纯java解析安卓apk包名与版本号

    要解析APK,我们需要读取`AndroidManifest.xml`文件,它是获取包名和版本号的关键。 在Java中,我们可以使用`java.util.zip`包中的类来操作ZIP文件。例如,`ZipFile`类可以用来打开和读取APK文件,而`ZipEntry`则...

    Java获取ipa、apk文件配置信息jar包

    然后,通过读取Info.plist文件(XML格式),你可以获取到应用的包名(CFBundleIdentifier)、版本号(CFBundleShortVersionString)等信息。 对于apk文件,Java可以使用`java.util.zip`包中的ZipFile类来读取和解压...

    Java解析apk、ipa图标,包名,应用名称,版本号

    本文将深入探讨如何使用Java语言解析这两种包,提取其中的关键信息,如图标、包名、应用名称和版本号。 首先,我们需要了解APK和IPA的结构。APK文件本质上是一个ZIP压缩包,包含AndroidManifest.xml等元数据文件,...

    Java解析apk文件

    本篇文章将深入探讨如何使用Java解析APK文件,提取其中的关键信息,包括版本号码、版本名称、包名、权限、最低支持的Android平台版本、SDK版本以及应用程序的相关元数据。 首先,我们需要了解APK文件的结构。APK是...

    DELPHI XE 查看APK版本号等信息

    这个标题"DELPHI XE 查看APK版本号等信息"指的是利用Embarcadero Delphi XE这款强大的编程环境,来编写程序以获取APK文件的元数据,包括版本号。描述中提到,由于网上缺乏此类资源,作者自行研发并愿意分享,这体现...

    Java获取ipa_apk文件信息jar包

    Java解析ipa_apk读取包名、版本名、版本号的功能,意味着你可以通过这个jar包获取到以下关键信息: 1. **包名(Package Name)**:这是Android应用的唯一标识符,符合Java的命名规范,通常以反域名的形式表示,如`...

    Java 读取Apk包名 版本 包含AXmlResourceParser.jar

    Java语言可以用来处理APK文件,获取其中的关键信息,如包名、版本号等。这里我们将深入探讨如何利用Java读取APK的包名和版本信息,以及涉及到的`AXmlResourceParser.jar`库的作用。 首先,我们要明白APK文件其实...

    Java获取apk安装包信息工具jar包

    Java获取apk安装包信息工具jar包,获取versionCode、versionName、package、minSdkVersion、targetSdkVersion、uses-permission,等。

Global site tag (gtag.js) - Google Analytics