这是我参与「第四届青训营」笔记创作活动的第1天
Android 系统及客户端概览
粗略了解移动互联网
产品经理从人获得需求,从世界获得信息,然后用代码实现在手机上
客户端是离用户最近的研发
app组织内部的结构:
- 1.产品经理获得用户需求交由客户端实现功能和交互
- 2.推荐内容和服务端提供内容和数据
- 3.汇总成安装包交由QA进行质量保障
- 4.最后交付
Android知识图谱
可以粗略的将职业目标分为三类:
- 1.对外:为用户创造价值
- 第一层交付:页面+逻辑+数据
- 第二层交付:多样性需求:视屏、直播、游戏、AR、图像
- 第三层交付:体验+质量+安全+个性化
- 2.对内:为公司减少成本
- 第一层交付:单人效应
- 第二层交付:团队效能
- 3.自身:自身也是产品,自身的技术品牌
- 第一层交付:满足交付的基本技
- 第二层交付:打造自身的技术高度
- 第三层交付:君子不器,培养自己的综合素养
程序员发展金字塔:
认识Android系统
- 第一层:系统应用层(各种系统APP和自己编写的APP)
- 第二层:JAVA API层(提供给开发者的接口)
- 第三层:原生C++层和Android Runtime层(核心的系统服务和组件都是c/c++编写的,该层可以实现多样化和虚拟机)
- 第四层:硬件抽象层HAL(提供硬件组件的封装)
- 第五层:linux内核(Android平台的基础)
APK构成
当android程序编写完成后会自动打包成APK文件,解压后包括:
- 1.AndroidManifest.xml:文件记录生命app中四大组件以及权限
- 2.classes.dex:所有编写的java、kotlin等代码
- 3.res文件:所有资源文件(图片、颜色、字符串、xml布局文件)
- 4.lib文件夹:主要是存放C/C++代码编译成的so文件
- 5.META-INF文件夹:存储签名和证书,为了安全
Git常用指令
标题:Android 系统及客户端概览|青训营笔记