初识Android | 青训营笔记

143 阅读2分钟

初识Android | 青训营笔记

这是我参与「第四届青训营」笔记创作活动的的第1天

Android 知识图谱

  • 对外:

    1. 第一层 页面+逻辑+数据(页面:Android基础+复杂View; 逻辑:语言基础和结构; 数据:网络交互+数据存储;)

    2. 第二层 多样性需求 例如:视频、直播、AR、图像、游戏

    3. 第三层 体验+质量+安全+个性化 (体验:用户体验; 质量:程序健壮程度; 安全:用户隐私+数据安全; 个性化:端智能+场景设置;)

    4. 技能点:Android系统,底层引擎,安全,Hook,机器学习,端智能

  • 对内:

    1. 第一层:单人效能
    2. 第二层:团队和公司效能
    3. 第三层:君子不器,培养自己的综合素养
    4. 综上:即在满足开发所需基本技能前提下,拓展自己技能树的深度和宽度。

认识Android系统

安卓(Android)是一种基于Linux内核(不包含GNU组件)的自由及开放源代码的操作系统。主要使用于移动设备,如智能手机和平板电脑,由美国Google公司和开放手机联盟领导及开发。其主要结构如下:

  • System Apps(系统应用层)
    • 所有安装在手机上的系统应用都属于这一层,用户自己开发的应用也属于这一层。
  • Java API Framework(Java API 框架层)
    • 这一层主要提供了构建应用程序时可能用到的各种API,开发者通过这一层的API构建APP。
  • Native C/C++ Libraries(原生C/C++层)
    • C/C++库
  • Android Runtime(安卓虚拟机层)
    • 虚拟机(Dalvik/ART)     // ART:Android Run Time   
  • Hardware Abstaraction Layer(硬件抽象层)
    • Android的硬件抽象层,简单来说,就是对Linux内核驱动程序的封装,向上提供接口屏蔽低层的实现细节
    • HAL 可定义一个标准接口以供硬件供应商实现,这可让 Android 忽略较低级别的驱动程序实现。
  • Linyx Kernel(Linux层)
    • Android是基于Linux内核的。
    • 提供了安全性、内存管理、进程管理、网络协议和驱动模型等... 核心系统服务
    • 为各种硬件提供了驱动程序,如显示驱动、相机驱动、蓝牙驱动、电池管理等等。

Android开发IDE--Android Studio

image.png

  • manifests:存放AndroidManifest.xml,其作用为生命app中四大组件,以及权限等
  • Java:存储编写的java代码。
  • res:开发所需资源存储的地方。

Git

Git(读音为/gɪt/)是一个开源的分布式版本控制系统,可以有效、高速地处理从很小到非常大的项目版本管理。也是Linus Torvalds为了帮助管理Linux内核开发而开发的一个开放源码的版本控制软件。

常用指令表: origin_img_v2_636c5838-80d8-4a9b-a0d9-be35873ba64g.jpg