`

几种获取应用程序/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文件进行解析

 

分享到:
评论

相关推荐

    ApkHelper文件查看工具

    《ApkHelper:深入解析APK安装包信息的利器》 在移动互联网时代,Android应用程序,也就是我们常说的APK文件,已经成为了智能手机生态的重要组成部分。对于开发者而言,理解和分析APK文件是优化应用性能、解决兼容...

    sqlserver离线安装包

    "sqlserver离线安装包" 提供了这样一种解决方案,使得我们可以在无网络的情况下完成 SQL Server 的部署。 离线安装通常涉及到以下几个关键步骤和知识点: 1. **下载完整安装包**: 要进行离线安装,首先你需要在有...

    SIM卡应用下载

    SIM卡不仅存储了用户的电话号码、短信等基本信息,还可能包含一些特定的应用程序,比如支付服务。"翼支付"是中国电信推出的一款移动支付服务,它允许用户通过手机进行线上和线下的支付操作。在刷机(即对手机操作...

    jar和jad转换apk

    当用户下载一个Java应用程序时,设备会读取.jad文件来获取必要的信息,从而决定是否安装该应用程序。在Java ME平台中,.jad文件与.jar文件通常是一起使用的。 ### Android安装包(.apk) .apk文件是Android操作...

    apk权限解释

    在Android 6.0(API级别23)及更高版本中,引入了一种新的权限管理系统,允许用户更精细地控制每个应用程序的权限。这意味着即使应用程序请求了某项权限,用户也可以选择是否授予该权限。这种机制加强了用户的隐私...

    安卓良性样本apk,爬虫爬取共20w个最新的正常良性apk

    在移动应用开发领域,尤其是在安全研究和测试中,了解和分析良性Android应用程序(简称apk)是至关重要的。安卓apk是Android应用的安装包,它包含了所有必要的资源、代码和元数据,使得应用能在Android设备上运行。...

    android安装apk详解[收集].pdf

    APK(Android Package Kit)是一种压缩文件格式,它包含了应用程序的所有组成部分,包括代码、资源文件、证书等。用户可以直接将APK文件传输至Android设备上进行安装。与Symbian平台的SIS或SISX文件相似,APK文件也...

    2000个apk下载链接

    综上所述,“2000个apk下载链接”不仅提供了一种获取大量Android应用程序资源的方式,同时也提出了对这些资源管理使用的一系列挑战。正确地利用这些资源,不仅可以提升个人技术水平,还能为他人带来便利。但同时也要...

    安卓应用APP更新

    APK是安卓系统中应用程序的安装包,它包含了应用的所有组件,如代码、资源文件、图标等。当有新的版本发布时,更新通常就是将旧的APK替换为新版本的APK。 在安卓应用APP更新的过程中,主要有以下几种方式: 1. **...

    应用签名、包名

    在Android操作系统中,每个应用程序都必须经过签名才能安装和运行。应用签名是Android安全模型的重要组成部分,它确保了应用的完整性和开发者身份的验证。本文将深入探讨应用签名的概念、重要性以及如何获取和查看...

    Android虚拟来电apk

    "Android虚拟来电apk"指的是专为Android系统设计的虚拟来电应用程序的安装包文件。这类应用通常包含了自定义来电显示、铃声以及时间设置等功能,使得用户可以预先设定一个来电,以便在需要时使用。 首先,虚拟来电...

    androidAPK应用安装过程以及默认安装路径.docx

    - 通过解析安装包`parsePackage`获取安装包的信息结构:`scanPackageLI(File scanFile, File destCodeFile, File destResourceFile, PackageParser.Package pkg, int parseFlags, int scanMode)` - 实现文件复制的...

    apk反编译最新工具

    首先,APK是Android应用程序的安装包,它包含了应用的代码、资源、配置等所有必要组成部分。当开发者想要查看、修改或分析APK的内部结构时,就需要进行反编译操作。这在软件安全测试、逆向工程、二次开发等场景中...

    88个Android应用程序

    标题 "88个Android应用程序" 暗示了这是一份包含88款不同Android应用的集合,可能是源代码、APK安装包或者是相关的项目案例。Android是谷歌开发的开源移动操作系统,广泛应用于智能手机和平板电脑。这个压缩包可能是...

    靠谱助手怎么安装本地apk.docx

    【靠谱助手】是一款知名的安卓模拟器,它允许用户在个人计算机上运行安卓应用程序,从而提供在大屏幕和键盘鼠标操作下的安卓游戏和应用体验。在本文档中,我们将详细讲解如何使用靠谱助手来安装本地的APK文件。 ...

    InstallAPKDemo

    在Android开发中,通常有以下几种安装APK的方法: 1. **通过Google Play Store**:这是最常见的方式,用户可以直接在Play Store搜索并下载安装应用。但是,对于未在Play Store上架或者开发者想私下分发的应用,这种...

    Android Apk反编译

    在Android开发领域,APK反编译是一种常见的技术手段,用于理解APK应用程序的工作原理、逆向工程或安全分析。本篇文章将详细讲解如何在Windows环境下利用一键APK反编译工具,包括ApkTool、dex2jar以及jd-gui等工具...

    APP弹窗注入.zip软件安装包下载

    【标题】"APP弹窗注入.zip软件安装包下载"指的是一个特定的软件安装包,它包含了可以对应用程序(APP)进行弹窗注入功能的代码或工具。这种技术通常用于测试、调试或者广告注入等目的。在移动应用开发中,弹窗注入...

    adb安装包,直接下载解压即可

    adb(Android Debug Bridge)是Android开发者工具包(SDK)的一部分,它是一个命令行实用程序,允许用户通过USB或Wi-Fi连接在计算机上与Android设备进行通信。这个压缩包包含了adb安装的基本组件,用户只需下载并...

    mac android app 签名工具

    4. 使用ApkSignTool.app对APK进行签名,打开应用程序并指定你的APK文件和密钥库信息。通常,你需要输入密钥库路径、别名、密钥库密码以及私钥密码。 5. 完成签名后,ApkSignTool将生成一个新的签名过的APK。你可以将...

Global site tag (gtag.js) - Google Analytics