• 这一系列底层知识基于Android 6.0.1版本。

  • 概述

  • 在我还是菜鸟的时候,有很多技术都不明白,也找不到答案,比如,apk是如何安装的?资源是怎么加载的?再比如,AIDL,只听未用过。四大组件也是这个问题,我只用过Activity,其他三个组件不但没有用过,甚至连他们是做什么的,都不是很清楚。

  • 之所以是这样,是因为我一直从事的是金融类App开发的工作,这类App基本是由列表和详情组成。所以每天面对的是Activity,写好这两个类页面,再把网络请求框架封装好就够了。绝大多数App开发人员都是如此。但直到接触Android热更新和插件化等技术,我才发现只掌握这些还不足以支撑我四处游荡的灵魂.....

  • 在网上看了很多文章,但大多都是给ROM开发人员看的,之贴出部分代码,繁多文章,琐碎的代码,让App开发人员看的头大。那该如何吸收这部分知识?

  • 可以简单的把Android底层知识分为两种: -type one:知道概念即可,比如Zygote,其实开发人员不需要了解Zygote的,知道有这么个东西是“云与天地”的就够了,类似的还有SurfaceFlinger、WMS这些概念。 -type two:需要知道内部原理,比如binder,需要了解他的架构模型,Client、server以及ServerManager。它们都扮演者哪些角色?他们是如何分工?

  • 这个系列将介绍以下概念,掌握这些底层知识,你就可以进军Android插件化大门了。 - binder; - AIDL ; - AMS; - 四大组件的工程原理; - PMS; - App 安装过程; - ClassLoader 以及双亲委托。


【 karle 专栏 】Android 初探底层知识系列相关推荐

  1. 写给Android App开发人员看的Android底层知识合集(1-8)

    写给Android App开发人员看的Android底层知识合集(1-8) 转自包老师:http://www.cnblogs.com/Jax/p/6864103.html 写给Android App开 ...

  2. Android音视频学习系列(六) — 掌握视频基础知识并使用OpenGL ES 2.0渲染YUV数据

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  3. Android音视频学习系列(五) — 掌握音频基础知识并使用AudioTrack、OpenSL ES渲染PCM数据

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  4. android 集成同一interface不同泛型_C# 基础知识系列- 10 反射和泛型(二)

    0. 前言 这篇文章延续<C# 基础知识系列- 5 反射和泛型>,继续介绍C#在反射所开发的功能和做的努力.上一篇文章大概介绍了一下泛型和反射的一些基本内容,主要是通过获取对象的类型,然后 ...

  5. Android 驱动(3)---Android驱动开发知识储备

    Android驱动开发知识储备 Android软件层次结构 (1)操作系统层 显示驱动(Frame Buffer),Flash内存驱动,照相机驱动,音频驱动,WiFi驱动,键盘驱动,蓝牙驱动,Bind ...

  6. 【karle 专栏】2019一起做个App吧。「掘金技术征文」

    扯皮:想做一款app 大概是在我17年去上海出差脑袋冒出的想法,我很喜欢开发app,也想参与开发一款大众熟知的App,只是我当时对整个app开发接触的很少,对后端服务器知识更是少之又少.每当看到鸿洋大 ...

  7. Android盒子 摄像头,UVC系列1-Android盒子控制云台摄像头系列

    微信公众号:Android部落格 个人网站:chengang.plus/ 文章最初发布在CSDN 1.知识点 Android作为host端控制云台摄像头整个实现过程中涉及了Android kernel ...

  8. Android音视频学习系列(八) — 基于Nginx搭建(rtmp、http)直播服务器

    系列文章 Android音视频学习系列(一) - JNI从入门到精通 Android音视频学习系列(二) - 交叉编译动态库.静态库的入门 Android音视频学习系列(三) - Shell脚本入门 ...

  9. 多层高速PCB设计学习(一)初探基本知识(附单层设计补充)

    系列文章内容 多层高速PCB设计学习(一)初探基本知识(附单层设计补充) 多层高速PCB设计学习笔记(二)基本设计原则及EMC分析 多层高速PCB设计学习笔记(三) GND的种类及PCB中GND布线实 ...

最新文章

  1. linux下远程传输文件命令scp使用注解
  2. oozie调度中的重试和手工rerun一个workflow
  3. 区块链4.0DexChain是什么?
  4. yolov3 推理所需要的时间_目标检测-番外五:YOLOv3-Plus
  5. geth bootnodes
  6. java 8入门与实践_30个Java入门技巧和最佳实践
  7. table 样式详解
  8. [原] insert into … on duplicate key update / replace into 多行数据
  9. 性能测试之JMeter测试结果写入Excel
  10. 序列化,pickle,shelve,json,configparser
  11. LINUX下用select实现串口通讯示例
  12. (一)Flask 学习 —— Hello World
  13. c语言逻辑推理题大全,C语言逻辑推理例题(附答案)
  14. Clover 驱动文件夹_使用Clover安装macOS入门指南
  15. mt6735通用recovery_mt6735刷机包下载
  16. [嵌入式学习必备网站分享]嵌入式开发必须收藏的二十个网站 内附超链接 实用 嵌入式单片机学习网站
  17. HTML文本格式化标签详解
  18. 【大爱】C++STL 常用 函数 用法(转载自duoduo3_69)
  19. 一种将海康大华宇视等安防摄像机发布到H5网页微信进行直播的全终端无插件播放技术方案
  20. 微信小程序中实现地图导航

热门文章

  1. excel 2010 学习笔记一 Vlookup 函数的使用
  2. Linux 日志系统详解
  3. C#与Excel互操作
  4. OpenGL学习(4)——纹理
  5. 3.11上午课程重点
  6. cocos dos命令
  7. 第 5 章 Stream
  8. 前端交易型系统设计原则
  9. java异常处理之throw, throws,try和catch
  10. 点击拖动放大该图片大小