首页 > 编程知识 正文

安卓10框架,安卓10虚拟框架

时间:2023-05-06 21:11:23 阅读:40912 作者:3880

一、什么是安卓?

安卓是谷歌公司开发的基于Linux的开源操作系统。

——源地址1:https://安卓. Google source.com /

——源代码地址2: http://androidxref.com/

专门为移动设备开发的操作系统,包括手机、平板电脑、车载系统和智能电视。

安卓的第一个版本于2008年11月发布,至今已有10多年的历史,几乎每年更新一个版本,下一个版本的安卓q将于今年10月23日发布。 API版本

二.安卓系统分层

高速APP应用层

Java API框架

Lib库和安卓运行时环境

HAL层

Linux内核

三.安卓APP研发

需要的知识是什么?

开发参考手册: https://developer.Android.Google.cn /

IDE:Android Studio或Eclipse

语言: JAVA

知识点

四.安卓四大组件

活动:活动通常是指屏幕

或者窗口需要布局。 布局通常在Android manifest.xml中设置

生命周期

服务

服务(也称为服务)主要处理长时间的任务

运行与用户界面无关,而是在后台运行

生命周期和使用方法

调用启动类型的服务:oncreate(-onstartcommand )-service running-- (context.stop service )-onDestroy ) )

调用绑定的服务:oncreate(-onbind )-service running-- (on unbind )- onDestroy ) )

Broadcast Receiver :翻译后是广播接收器,用于消息传递

如果在触发事件时发送广播,则注册广播的人可以接收消息

注册分为动态注册和静态注册

静态注册到Android manifest.xml并动态注册到代码中

内容提供程序

内容提供者

使用content provider为不同APP应用程序提供数据存储和读取

在Uri中标识唯一的访问门户

Content Provider通常与数据库(Sqlite )一起使用,也有网络、文件和XML格式。

Android附带的内容提供程序包括浏览器、呼叫日志、联系人、媒体和设置

五.安卓进程间通信

六.上下文

上下文是抽象类,Activity、Service、Application等是该类的实现。 面向对象语言中大部分操作都需要基于对象,这时需要context。

七. Java API框架

SystemServer框架中最重要的进程之一,也是虚拟机启动后运行的第一个java进程,SystemServer将启动其他系统服务。 所有这些系统服务都作为线程存在于systemserver进程中。

介绍几种最常用的服务:

activitymanagerservice :管理AMS和Acvitity的生命周期和事件处理

软件包管理器服务: PMS、程序安装和软件包管理

WindowManagerService:WMS,窗口管理包括显示器、视图、大小等

电话管理器:通话管理

八.安卓运行时库

库路径:/system/lib/

So库一般是用C/C编译的动态库,上层的Java程序在JNI中调用

主要内容包括Lib c、OpenGL、SSL ……

所有安卓APP都是用JAVA语言开发的。 JAVA是说明语言,必须在虚拟机环境中运行。 Android Runtime和Dalvik是解释器,Dalvik用于Android 4.4和更低版本,ART为4.4和更高版本。

九、安卓代码如何执行?

在Android中,Java类被转换为DEX字节码。 DEX字节码在ART或Dalvik runtime中转换为机器码。 其中DEX字节码与设备体系结构无关。 Dalvik使用JIT (任务时间)编译,ART使用AOT (辅助时间)编译。

十. HAL层

HAL:HARDWARE ABSTRUCT LAYER,简单地说,封装Linux内核驱动程序,提供高级接口,屏蔽低层实现的详细信息。 HAL定义了硬件供应商实现的标准接口,允许Android忽略较低级别的驱动程序实现。

一些硬件制造商不想开源一些与他们的硬件相关的核心东西。 如果将自己硬件的所有驱动程序放入内核空间驱动程序中进行实施,则必须遵循GPL协议,并且必须是开源的。 形成HAL层后,他们可以在HAL层上放置一些核心的算法等实现。 HAL层位于用户空间,不属于linux内核,与安卓源代码一样遵循appache协议。 它可以是开源的或开源的。

十一. Linux内核

安卓驱动程序由两部分组成。 一个是HAL层,另一个是linux内核驱动HAL层,提供从上层调用的接口,同时以IOCTRL或一些框架的形式访问linux内核,将各种驱动程序传递到内核驱动的linux内核USB、COM、WIFI、BT、CAMERA、AUDIO

十二、美联储、美联储

一个安卓手机通常包括两个处理器AP和BP

Ap :应用程序处理器,执行操作系统和APP应用程序数据处理

BP :包括基带处理器、无线通信、信道调制、编码、呼叫、语音、短信数据服务,在该芯片上进行。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。