Android学习笔记之Android平台架构和特性
一.Android的平台架构及特性
Android系统的底层建立在Linux系统之上,该平台由操作系统,中间件,用户界面和应用软件4层组成。采用一种被称为软件叠层的方式进行构建。
1.应用程序层(System Apps)
Android系统将会包含一系列的核心应用程序,包括电子邮件客户端,SMS程序,日历,地图,浏览器,联系人等,这些应用程序通常都是用Java编写的。
2.应用程序框架(Java API Framework)
Java 语言编写的 API 使用 Android OS 的整个功能集。这些 API 形成创建 Android 应用所需的构建块,它们可简化核心模块化系统组件和服务的重复使用。
3.函数库(Native C/C++ Libraries)
Android包含一套被不同组件所使用的C/C++库的集合,一般来说,Android应用开发者不能直接调用这套C/C++库集,但可以通过它上面的应用程序框架来调用这些库。
下面列出一些核心库:
1> libc库;
2> 媒体库(Media Framework):
基于PacketVideo的OpenCORE,这套媒体库支持播放和录制许多流行的音频和视频格式,以及查看静态图片。
3> Surface Manager:
管理对显示子系统的访问,并可以多个应用程序的2D和3D图层提供无缝整合。
4.Android运行时(Android Runtime)
Android运行时由两部分组成:Android核心库集和ART,其中核心库集提供了Java语言核心库所能使用的绝大部分功能,而虚拟机则负责运行Android应用程序。
5.硬件抽象层 (HAL)
硬件抽象层 (HAL) 提供标准界面,向更高级别的 Java API 框架显示设备硬件功能。HAL 包含多个库模块,其中每个模块都为特定类型的硬件组件实现一个界面,例如相机或蓝牙模块。当框架 API 要求访问设备硬件时,Android 系统将为该硬件组件加载库模块。
6.Linux内核
Linux内核提供了安全性,内存管理,进程管理,网络协议栈和驱动模型等核心服务。
Android学习笔记之Android平台架构和特性相关推荐
- Android学习笔记:Android基础知识点(不断更新中)
1.Android学习笔记:OkHttp 2.Android学习笔记:更新UI的方法(UI线程和非UI线程) 3.Android学习笔记:Volley 4.Android学习笔记:Handler 5. ...
- Android学习笔记(Android Studio)3-3(ProgressBar ProgressDialog)(加载进度条、转圈圈)UI组件之弹出组件
Android学习笔记3-3 推荐新手向学习视频:B站https://www.bilibili.com/video/av38409964点我传送 3-3 ProgressBar & Progr ...
- Android学习笔记之Android Studio添加新的Activity
1.创建Android项目工程:AndroidTest 创建过程可参考网上诸多教程. 2.添加新的Activity,步骤如下 a. 在layout文件夹上右键,New-Activity-相应Activ ...
- Android学习笔记之android:collapseColumns,android:shrinkColumns和stretchColumn
TableLayout是一个使用复杂的布局,最简单的用法就仅仅是拖拉控件做出个界面,但实际上,会经常在代码里使用TableLayout,例如做出表格的效果.本文主要介绍TableLayout的基本使用 ...
- Android学习笔记(四):android画图之paint之setXfermode
2019独角兽企业重金招聘Python工程师标准>>> setXfermode 设置两张图片相交时的模式 我们知道 在正常的情况下,在已有的图像上绘图将会在其上面添加一层新的形状. ...
- Android学习笔记之 android:collapseColumns ,android:shrinkColumns 和stretchColumns
TableLayout是一个使用复杂的布局,最简单的用法就仅仅是拖拉控件做出个界面,但实际上,会经常在代码里使用TableLayout,例如做出表格的效果.本文主要介绍TableLayout的基本使用 ...
- pro android学习笔记,Pro Android学习笔记(六八):HTTP服务(2):HTTP POST-Go语言中文社区...
BufferedReader in = null; try{ //[Step 1]创建一个HttpClient的对象(或使用已有的) HttpClient client = new DefaultHt ...
- Android学习笔记之-Android性能测试之DDMS的使用
转载:http://www.cnblogs.com/zhuque/archive/2013/04/02/2995802.html 安装/配置: 通过另外一个工具也可以测试手机客户端APP的性能,这就是 ...
- android将彩图转为黑白_[Android学习笔记九] Android 开发中图片灰阶(黑白)显示...
阅读本文之前关于将RGB颜色值转换为灰阶值的计算方法可参见: 灰阶显示图片的典型应用就是用户头像,如用户在线头像显示彩色(原图),不在线显示灰色(黑白图).总结一点就是更加一张原始图片来通过颜色的过滤 ...
最新文章
- 在Foreda8上试安装Apchehttpd-2.4.6.tar.gz
- POJ 1661 Help Jimmy DP
- 【转载】SAP 计划策略组40、50对比分析
- 全民大乐斗场服务器状态,看到最近很多人问重修,**说一下这个问题
- byteman_Byteman –用于字节码操纵的瑞士军刀
- java 线程 free_Java进阶05 多线程
- rsync同步工具学习笔记
- InternetCheckConnection 通过尝试连接特定的网址,可以用来判断目前机器是否接通外网
- 【Vue.js 知识量化】Promise
- 4.3配置自定义情况的Bean实例
- JavaScript高级程序设计(第四版) 第二章 HTML中的javascript
- 淘宝店铺950自定义模块实现1920全屏代码
- DRV8833直流电机驱动模块代替 TB6612FNG电机驱动
- DM8达梦数据库:sql查询达梦数据库实例的详情
- 光线跳线转接太多,断网了
- tolower c语言,C 库函数 tolower() 使用方法及示例
- SpringBoot 整合Activiti(二)——流程审批完整示例
- 【产品】智能管道设计运维一体化平台 - AIPIPE 2022R2版本新功能详解
- HTML 用过渡跟动画制作一个简易的旋转魔方
- 2021最新 腾讯云服务器配置LNMP环境并安装wordpress