`
韩悠悠
  • 浏览: 839932 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

android源码解析之二ApplicaitonInfo和PackageManager

 
阅读更多


 ApplicationInfo

ApplicationInfo 类继承了PackageItemInfo

通过applicationinfo可以获得特定的应用,这个符合从

AndroidManifest.xml获取的特定的信息

这个类定义的属性主要是再配置文件中存在的节点。

通过applicationinfo可以获取这些属性值

这些属性的如何获取以及子类的属性及方法的实现。

绝大多数是通过PackageManager包管理器的实现类来完成。

PackageManager用于取得各种各样的包的信息。此类是一个抽象类。实现类暂时没找到。

 

PackageItemInfo

这个基类含了这个软件包管理器的基本信息。比如软件的名称,包名,图标等信息。提供了最基本的属性。如:label, icon, and meta-data等

方法介绍

CharSequence loadLabel(PackageManager pm)

此方法用于通过一个包管理器来获取当前应用的标签名称。如果获取不到,返回包名即应用名

Drawable loadIcon(PackageManager pm)

此类用于获取当前应用的图标,如果获取不到,返回默认的图标。

Drawable loadLogo(PackageManager pm)

获取当前项目的图标,如果获取不到,返回系统默认图标

XmlResourceParser loadXmlMetaData(PackageManager pm, String name)

加载附加meta-data的XML资源,如果不存在,返回null

 

PackageManager

本类API是对所有基于加载信息的数据结构的封装,包括以下功能:

    安装,卸载应用
    查询permission相关信息
    查询Application相关信息(application,activity,receiver,service,provider及相应属性等)
    查询已安装应用
    增加,删除permission
    清除用户数据、缓存,代码段

 


 见图片。

 

 

 



 

  • 大小: 155.2 KB
分享到:
评论

相关推荐

    android PackageManager 反射调用相关的类

    Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用Java反射。android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用...

    android PackageManager 反射调用相关的类android_dependency.jar

    Android PackageManager 有很多方法是没有暴漏出来的,我们如果想调用的话需要用Java反射。android_dependency.jar 提供了反射调用相关的class定义,直接放到你的工程libs目录下面,然后就可以进行反射调用...

    Android中获取应用程序(包)的信息 PackageManager的使用

    总的来说,`PackageManager`是Android开发中不可或缺的一个工具,它使得开发者能够对系统中的应用进行管理和控制,提供了丰富的功能,如查询应用信息、检查权限、解析Intent等。正确地使用`PackageManager`可以极大...

    安卓Android源码——获取Android系统程序信息.zip

    3. **Android源码解析**:在Android源码中,`com.android.server.pm.PackageManagerService`类是处理应用程序管理的核心服务。它包含了处理安装、卸载、查询应用等操作的逻辑。例如,`getInstalledPackages()`方法...

    Android_PackageManager分析

    Android的PackageManager服务是系统的核心组件之一,它负责管理应用程序的安装、卸载以及应用信息的查询等操作。在Android系统中,PackageManager涉及到的主要知识点包括: 1. **`PackageManager` 类**: `...

    Android应用卸载器源码

    总结来说,Android应用卸载器的源码分析涵盖了Android应用的基本结构、卸载流程、权限管理和UI设计等多个方面,对于学习Android开发和理解系统工作原理十分有帮助。通过深入研究源码,开发者可以更好地掌握Android...

    Android手机管家源码

    **Android手机管家源码解析** 本项目是一款基于Android平台的手机管理软件——“Android手机管家”的源码,它集成了四个主要功能:文件管理、应用管理、电话拦截以及文件加解密。这些功能覆盖了日常手机使用中的...

    Android 新建文件夹源码

    下面我们将深入探讨如何在Android应用中实现这个功能,包括理解Android文件系统、获取存储权限、创建文件夹以及源码解析。 首先,Android的文件系统基于Linux,这意味着它采用的是目录树结构,根目录为"/"。在...

    Android应用源码之LauncherSample_Android.zip

    在Android开发领域,理解系统级应用的源码对于提升开发者的技术水平和解决实际问题具有重要的价值。"LauncherSample"是Android平台的一个示例项目,它展示了如何创建一个自定义的启动器应用。通过对这个项目的源码...

    Android中获取应用程序(包)的大小-----PackageManager的使用(二)

    本文将详细讲解如何通过Android的`PackageManager`服务来获取应用程序的大小,以及背后的实现原理。 首先,我们需要理解`PackageManager`在Android中的角色。`PackageManager`是Android系统的一个核心组件,它负责...

    Android Launcher3源码

    总之,通过研究`Launcher3`源码,开发者不仅可以定制自己的启动器,还能了解到Android系统如何管理主屏幕、应用抽屉、快捷方式和小部件,以及如何高效地与系统服务交互,实现数据同步和个性化设置。这将有助于提升对...

    安卓Android源码——获取手机应用信息.zip

    这涉及到对Android系统的深入理解和源码分析。下面将详细讲解如何通过源码来获取这些信息。 首先,Android应用程序的基本单位是APK文件,它们由一系列的类、资源文件、权限声明等组成。获取手机应用信息通常包括...

    Android部分源码—app

    这个源码包深入揭示了Android应用程序是如何运作的,尤其是关于Activity和各种关键Manager的实现细节。以下是对这些关键知识点的详细解释: 1. **Activity**:Activity是Android中的一个核心概念,它是用户界面的...

    PackageManager获取安装的应用列表

    总之,`PackageManager`是Android开发中不可或缺的一部分,它为开发者提供了访问和管理设备上应用程序的途径。通过熟练掌握`PackageManager`的使用,开发者可以更好地理解和控制用户设备上的应用环境。

    android.jar源码 安卓9.0

    5. **权限管理**:Android 9.0引入了更多关于权限的改动,源码中可以看到`PackageManager`、`PermissionController`等类如何处理权限请求和检查。 6. **多线程与异步处理**:`Handler`、`Looper`和`MessageQueue`是...

    Android应用源码之获取系统程序信息.zip

    7. **源码解析**:在提供的源码中,开发者可能已经封装了以上操作,创建了方便使用的工具类或方法。分析源码时,主要关注如何初始化`PackageManager`,调用哪些方法来获取信息,以及如何处理和展示这些信息。 8. **...

    Android源码——Intent切换.zip

    - 系统通过`PackageManager`服务和`IntentFilter`来解析和匹配Intent。IntentFilter是组件(如Activity)声明它可以处理的Intent类型。 - 当发送隐式Intent时,系统会遍历所有注册的IntentFilter,根据Action、...

    android SDK 4.0 & api15 源码

    《Android SDK 4.0与API 15源码解析》 Android SDK 4.0,也被称为Ice Cream Sandwich(ICS),是Android操作系统的一个重要版本,它在2011年10月发布,带来了诸多改进和新特性,旨在提供更一致、更人性化的用户体验...

    安卓Android源码——精典源码之获取系统程序信息.zip

    这个压缩包"安卓Android源码——精典源码之获取系统程序信息.zip"显然包含了一段用于获取系统程序信息的源代码,名为"ApplicationList"。这篇文章将深入探讨这个主题,详细解释如何在Android系统中获取应用信息,...

    android源码开发实战6.10.zip

    5. **系统服务**:Android系统服务如PowerManager、PackageManager和ActivityManager等,是系统运行的核心。理解它们的工作原理有助于开发更高效、稳定的系统级应用。 6. **JNI与C/C++开发**:Android应用可以使用...

Global site tag (gtag.js) - Google Analytics