主要是packageparser.java文件,在/frameworks/base/core/java/android/content/pm下。

我查看的地方时activity的解析,看代码

if (tagName.equals("activity")) { Activity a = parseActivity(owner, res, parser, attrs, flags, outError, false); if (a == null) { mParseError = PackageManager.INSTALL_PARSE_FAILED_MANIFEST_MALFORMED; return false; } owner.activities.add(a); } else if (tagName.equals("receiver")) {

这里调用了parseActivity函数,让我们在看看这个函数做了些什么

........... Activity a = new Activity(mParseActivityArgs, new ActivityInfo()); if (outError[0] != null) { sa.recycle(); return null; } .....(资源信息的一些处理)

在这里就新建了一个activity并添加到owner.activities.add(a);

然后系统有调用到这个activity时就在该列表里进行匹配查找。

更多相关文章

  1. android Tether 分析
  2. Android(安卓)recyclerview更新item位置移动
  3. Android音频系统之四AudioPolicy
  4. Android(安卓)使用WebView
  5. App 启动页出现短暂闪屏的解决方案
  6. Android(安卓)- Intent基础
  7. 关于android WebViewClient和WebChromeClient
  8. 在SQLite数据库中获取新插入数据自增长的ID值(传智播客笔记)
  9. 箭头函数的基础使用

随机推荐

  1. Android 状态栏透明
  2. Android——高德地图设置中心点和缩放比
  3. Android http协议实现文件下载
  4. Android一款界面良好使用简单的弹出框
  5. [置顶] Android 开发环境的配置
  6. Android仿抖音App 列表滑动 PagerSnapHel
  7. Shou.TV 招聘【北京】
  8. 如何获取Android设备名称(常用ADB命令介
  9. android解析二维数组对象key:value
  10. 第一章:android串口开发so库生成