第一章 Android简介
APP的开发方式
- NativeApp(原生APP)
就是用Android和Swift等原生语言开发的应用,性能优,成本高。 - WebApp
就是利用H5网页的模式开发APP,相当于一个网站加了一个APP的壳。成本低,门槛低。速度慢,功能有限。 - HybridApp(混合APP)
部分核心板块利用原生模式开发,非核心内容通过web方式实现,兼具两者优势。
Android特征
-
在内存和进程管理方面:
1、Android为了保证高优先级进程运行和正在与用户交互进程的响应速度,允许停止或终止正在运行的低优先级进程,以释放被占用的系统资源
2、Android进程的优先级并不是固定的,而是根据进程是否在前台或是否与用户交互而不断变化的
3、Android为组件定义了生命周期,并统一进行管理和控制 -
在界面设计方面:
1、提供了丰富的界面控件,加快了用户界面的开发速度,保证了Android平台上的程序界面的一致性
2、将界面设计与程序逻辑分离,使用XML文件对界面布局进行描述,有利于界面的修改和维护 -
提供轻量级的进程间通讯机制Intent,使用跨进程组件通信和发送系统级广播成为可能
-
提供了Service作为无用户界面、长时间后台运行的组件
-
支持高效、快速的数据存储方式:SharedPreferences、文件存储轻量级关系数据库SQLite
-
提供了通用的共享数据接口ContentProvider便于跨进程共享数据
-
支持位置服务和地图应用
-
支持Widget插件
Android体系结构
体系分为四层:
名称 | 内容 |
---|---|
Linux内核 | 提供安全机制、内存管理、进程管理、网络协议堆栈、驱动程序等 |
中间件层 | 函数库,主要提供一组基于C/C++的函数库,通过应用程序框架调用函数库。 |
程序框架层 | 提供Android平台基本的管理功能和组件重用机制 |
应用程序层 | 提供一系列的核心应用程序 |
补充:
-
中间件层:
1、在Android运行时,核心库为开发人员提供Android系统的特有函数功能和Java语言函数功能;
2、在Android运行时,ART虚拟机采用预编译技术,在应用程序安装时把程序代码转换成机器语言,加快了启动速度,并且使用应用程序的运行速度更快、电量消耗更少,系统也更加流畅。
3、具体的函数库比如:
Media Framework,实现音视频的播放和录制功能
SQLite,轻量级的关系数据库引擎
OpenGL ES,基于3D图像加速 -
应用程序框架:
比如:
Activity Manager,管理activity的生命周期
Windows Manager,启动应用程序的窗体
Content Provider,共享私有数据,实现跨进程的数据访问
Package Manager,管理安装在Android系统内的应用程序
Teleghony Manager,管理与拨打和接听电话的相关功能
Resource Manager,允许应用程序使用非代码资源
Location Manager,管理与地图相关的服务功能
Notification Manager,允许应用程序在状态栏中显示提示信息