Android文档阅读01—Android是什么?

许可协议:creativecommons licenses

Android是什么?

Android是一个针对移动设备的程序集, 其中包括一个操作系统, 一个中间件和一些关键性应用. 本文首先概览了Android SDK提供的工具和APIs, 当您在使用Java语言来开发Android平台的应用时您会用到它们.

特性

  • 程序程序框架可重用及可复写组件组成
  • 针对移动设备优化过的Dalvik虚拟机
  • 整合浏览器, 该浏览器基于开源的WebKit引擎开发
  • 提供了优化过得图形系统, 该系统由一个自定义的2D图形库; 一个遵循OpenGL ES 1.0标准(硬件加速)的3D图形库组成
  • 使用SQLite来实现结构化数据的存储
  • 媒体方面对一些通用的audio, video, 和图片格式提供支持(MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, GIF)
  • GSM技术(依赖硬件)
  • 蓝牙, EDGE, 3G和WiFi(依赖硬件)
  • Camera, GPS, 指南针, 和加速计 (依赖硬件)
  • 非常丰富的开发环境, 包括一个设备模拟器, 调适工具, 内存和效率调优工具和一个Eclipse的插件

Android的结构

下图展示了Android 操作系统的主要组件结构. 每一部分都在下面的段落有详细介绍

the major components of the Android operating system

应用程序

Android会附带一些核心的应用程序, 包括一个email客户端, 短信程序, 日历, 地图, 浏览器, 通讯录等等. 所有的应用程序都是由Java语言完成的.

应用程序框架

Developers have full access to the same framework APIs used by the core applications. The application architecture is designed to simplify the reuse of components; any application can publish its capabilities and any other application may then make use of those capabilities (subject to security constraints enforced by the framework). This same mechanism allows components to be replaced by the user.

开发人员可以跟那些核心应用一样, 拥有访问框架APIs的全部权限. 应用的系结构设计简化了各组件之间的重用;任何应用都可以分发自己的组件, 任何应用也可以使用这些分发的组件(应用的使用方法需遵循框架的安全性约束)。这个机制对用户来说同样适用, 他们也可以替换组件.

隐藏在每个应用后面的是一套服务和系统, 其中包括:

 

  • 一套表现丰富,扩展性很强的View, 通过这些View您可以创建包括list, grid, 文本框, 按钮, 甚至一个嵌入浏览器的应用
  • Content Providers, 通过它可以在某个应用内访问其他应用的数据(例如通讯录), 或者共享自己的数据
  • Resource Manager, 提供对静态资源的访问能力, 例如国际化文本和layout文件
  • Notification Manager, 通过该机制, 所有的应用都可以在状态栏显示自己的提醒信息
  • Activity Manager, 用于管理应用的生命周期, 并且提供了通用的向后导航功能


预想了解更多并且对一个应用有一个整体的了解, 请您看编写一个Android应用

库

Android 包含一套C/C++库, 被用于Android 系统中的各种组件中. 这些功能通过Android 应用框架展现给开发人员. 下面列出一些核心库:

  • System C library - 实现了BSD-derived 的标准C系统库(libc), 用于嵌入式的基于Linux的设备
  • Media Libraries - 基于PacketVideo的 OpenCORE; 该库提供了对许多流行的音频和视频格式的播放回放和录制功能, 同样包括静态图片文件, 包括MPEG4, H.264, MP3, AAC, AMR, JPG, 和 PNG 等
  • Surface Manager - 用于管理不同应用对图形显示子系统和2D和3D图形层的访问
  • LibWebCore - 一个时尚的web浏览器引擎, 为Android浏览器和内嵌的web view提供实现
  • SGL - 隐藏的2D图形引擎
  • 3D libraries - 基于OpenGL ES 1.0 APIs实现的库; 该库用于3D图形加速或提供高优化的3D软件光栅器
  • FreeType - 位图和向量模式的字体绘制
  • SQLite - 一个强大的, 轻量的关系型数据库引擎, 用于所有的应用

Android 运行时

Android包含一组核心库, 提供了Java语言核心库内的大部分功能.


每一个Android应用运行在自己的进程里, 用该应用自己的Dalvik 虚拟机实例. Dalvik 可以让一个设备高效的运行很多个VM. Dalvik 虚拟机执行Dalvik Executable (.dex)格式的文件, 该格式的文件经过优化 占用很小的内存. 该虚拟机是基于存储器的, 运行经过Java语言编译器的类, 这些类通过"dx"工具被转换成.dex格式.


Dalvik 虚拟机依赖Linux kernel 来实现一些潜在功能, 例如线程和底层内存管理.

Linux Kernel

Android基于Linux version 2.6内核来提供系统的核心服务, 例如安全机制, 内存管理, 进程管理, 网络堆栈和驱动模块. 该内核还扮演着一个虚拟的中间层, 该层介于硬件和其余的软件堆栈.

查看Android系统的源码 在线和离线方式 及阅读工具 前言     不管是做Android底层(Framework-Linux-驱动)开发,还是做APP开发,对于Android的某一个功能,某一个机制,或者某一个API,它到底是如何实现的,需要 Read the fucking source code,才能了然于胸,靠听第三方讲故事是不行的。 在线查看Android源代码 http://android.git.kernel.or 阅读详情

相关推荐

Robocup3d

一、 比赛介绍 RoboCup 仿真比赛是一个能为多智能体系统和模拟智能进行研究、教育的工具。比赛是在一个标准的计算机环境中进行的,提供了一个完全分布式控制、实时异步多智能体环境。通过这个平台,可以测试各种理论、算法和Agent体系结构。在实时异步、有噪声的对抗环境中,研究多智能体的合作对抗问题。当然,仿真组的比赛使用的机器人并非是真的机器人。一个机器人是一个Agent, 它拥有自己的大脑,

zhanghe2775115的专栏 7265

最新安卓版本对照表,API对照表(持续更新,更新到安卓17)

话不多说,直接上表,持续更新(更新到安卓16)。 列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。下表列出了所有记录的可能会影响应用开发者的功能和行为变更。请使用此列表查找影响您的变更,然后点击相应的链接以阅读文档。Java 和 OpenJDK 是 Oracle 及/或其关联公司的商标或注册商标。

雨季余静的博客 9万+

RAD Studio 12安装全攻略:从下载到破解InterBase的完整流程(附KeyPatch使用技巧)

本文提供RAD Studio 12的完整安装指南,包括系统要求、安装步骤及InterBase数据库的高效配置方法。详细介绍了如何使用KeyPatch工具进行许可证处理,并分享了IDE优化和开发技巧,帮助开发者快速上手这一强大的跨平台开发工具。

q6r7s8t9的博客 948

java毕设安卓基于Android的小说阅读与创作的平台(开题+源码)

在数字化阅读日益普及的今天,基于Android的小说阅读与创作平台应运而生,满足了用户随时随地阅读、分享和创作小说的需求。同时,通过平台的推广与应用,促进数字阅读文化的普及和发展,为文化产业的繁荣做出贡献。通过精美的界面设计和交互体验优化,展示小说的封面、简介和目录等信息,同时提供章节浏览和翻页功能,满足用户多样化的阅读需求。综上所述,本研究内容旨在通过系统设计与实现,打造一个功能全面、操作便捷的基于Android的小说阅读与创作平台,为用户提供优质的阅读与创作体验。

铁川毕设程序 762

三菱FX5U通信之CCLINK操作步骤

11. 连接 CC‐Link 用的端子排,连接 Ver.1.10 对应 CC‐Link 专用电缆。备注:1、以上对应的寄存器都是一一对应的,主站的点数可以比从站多,但是都需要一一对应起来。3.直接安装孔,用于直接安装的螺钉孔(2‐φ4.5,安装螺钉为 M4 螺钉)2.点阵 LED(显示模块中设置的站号和测试模式的内容)5.次段扩展连接器(连接扩展模块的扩展电缆的连接器)4.动作状态(显示 LED 显示模块的动作状态)10 电源连接器,用于连接电源电缆的连接器。1.扩展电缆(扩展时连接用的电缆)

ZXL622722的博客 6927

自动驾驶关键技术(一):时间敏感网络TSN

时间敏感网络TSN的基本概念、协议族介绍和开发流程。

3080

android pdf阅读器开发_屠龙宝刀 | PDF阅读哪家强?

我曾经很少接触到PDF格式的文件,一来高中课件大多是老师直接发来的PPT,二来以前读的书大多都属于[2019你不得不读的50本书]之类的热门书籍,能够轻而易举地找到TXT,mobi等多种格式的电子书,对搜索结果中显示PDF格式的文件大多直接跳过——后来才发现这是怎样一种奢侈的烦恼。等到读书的范围渐渐限定,越读越深,再加上各类论文的需求,渐渐地对PDF熟悉起来。很多书籍有时能找到PDF版已是幸运,有...

weixin_39926040的博客 481

【低空经济】多源异构数据融合的低空智能感知系统设计与实现

本文探讨了低空智能感知系统在多源异构数据融合中的设计与实现,重点解决无人机等低空飞行器的安全监测问题。通过雷达、光学和红外传感器的数据融合,系统识别准确率提升至92%,并实现120ms的低延迟处理。文章详细介绍了时空对齐、特征级融合和动态权重自适应等关键技术,为低空经济发展提供可靠技术支持。

weixin_29065659的博客 342

基于ssm+vue基于Android手机小说阅读APP【开题+程序+论文】

本研究将围绕基于Android手机的小说阅读应用展开,具体研究内容包括以下几个方面:首先,设计并实现用户管理系统,包括用户注册、登录、个人信息管理等功能,确保用户数据的完整性与安全性。本研究旨在通过开发一款基于Android手机的小说阅读应用,不仅为用户提供一个便捷、高效、个性化的阅读平台,提升用户的阅读体验,还旨在通过技术手段优化小说资源的整合与分发,促进文学作品的广泛传播与交流。同时,通过深入分析用户行为数据,实现精准的内容推荐,有助于激发用户的阅读兴趣,推动文学创作的繁荣与发展。

悦宁学姐程序 2675

华为OD机试2025C卷 - CPU调度策略 (C++ & Python & JAVA & JS & GO)

华为OD机试 2025C卷 CPU调度策略,提供Java、C++、Python、Go、JavaScript源码实现,并提供完整思路讲解

qq_45776114的博客 1296

Sigrity SPEED2000 General SI Simulation模式如何进行信号仿真分析操作指导-DDR

本例是几个简单的板载DDR颗粒的结构,本例中使用General SI Simulation模式仿真DDR信号,结构拓扑如下,Addcmd,clk,cke都是T拓扑。Sigrity SPEED2000 General SI Simulation模式可以对信号进行仿真分析,仿真将电源视为理想电源,以下图为例进行说明。DQS的接收端模型设置为DQS_34_ODT60_1333。模式如何进行信号仿真分析操作指导-DDR。附带驱动和接收端的IBIS模型。

weixin_54787054的博客 512

入门:Android 文档的阅读顺序

 因为看了看Android Blog, 在最新的文章里面介绍了几篇文章,其中一篇是<<以开发者的眼光来看Android SDK>>,作者在其中分析了的关于DOC的阅读顺序引起了我的兴趣,确实,那么多的文档,应该怎么看呢?哪些是必须先弄明白的?哪些应该先知道个大概,今后引用的时候再细细阅读?现在简要的介绍一下原作者的观点,希望能帮上你的忙。 1. 首先当然是要知道,什么...

weixin_30314631的博客 116

VAY 是 SAP 自动科目确定(OBYC-GBB)中的科目修改码,专用于带科目分配对象的销售订单发货场景,核心是触发 “Dr 成本要素科目(如销售费用 / 特定成本对象) Cr 库存商品” 的分录,

摘要:VAY是SAP中用于带科目分配对象(如成本中心、WBS)的销售订单发货的科目修改码,与标准VAX场景不同,它生成"借成本要素科目/贷库存商品"的分录。配置路径为OBYC-GBB-VAY,需确保借方科目为成本要素。典型业务场景包括免费样品、项目专用发货等。常见问题包括VAY未触发或科目记账错误,需检查销售订单科目分配、移动类型设置及OBYC配置。特殊场景建议单独配置科目以便费用分析。

金牌架构师 1253

安卓项目后端开发(Javaweb Selvlet)01

本期安卓实训需要用到后端,既然是学习J2EE,那么就尝试用JavaEE开发一个简单的安卓后端吧 1.项目需求分析: 项目为开发一个新闻APP的后端,按照项目前端需求,暂不设计图片等二进制文件的存储;但是为了确保良好的可扩展性,所以采用MVC方式,提供M(模型)和C(控制)层,通过返回json来实现前后端交互,通过安卓app实训;实训项目访问需求小,数据访问量低,所以采用简单的JDBC连接数据库即可...

weixin_43984426的博客 1701

RU DOS版、EFI版32bit/64bit BIOS常用工具

DOS版、EFI版的RU工具,可用来查看IO、MEM、PCI、SMBIOS等资源。亲测在EFI SHELL下可用。

android 蓝牙通讯demo

android 下蓝牙通讯demo,实现了发现蓝牙,使能蓝牙,通过蓝牙发送消息。

Notion——Android版下载与注册登录

一、Notion介绍 notion安卓版是一个多功能文档软件,可以免费使用notion安卓版。它的存储范围没有上限,可以随便拖放网站、文档,还能和多成员互动整理文档。notion还有多端同步的功能,十分方便。 Notion安卓版亮点 免费供个人和团队使用 永远不会达到存储限制 只需拖放即可制作所需的仪表板、网站、文档或系统 Notion功能 笔记、文档、任务 拖放任何东西。组织一切 实时协作,轻松共享页面。添加评论和@队友。如果需要和别人协作,则需要在 Invite a Person

DSTBP的博客 3万+

IDEA的使用指南

IDEA基于java的使用手册,可以最快速的上手,在使用中不断的丰富自己的使用技巧.

springboot+vue基于Android的图书社交阅读APP【程序+论文+开题】-计算机毕业设计

最后,基于大数据分析技术,构建个性化推荐系统,通过分析用户的阅读历史和社交行为,预测用户可能感兴趣的图书内容,实现精准的内容推荐,提升用户的阅读体验与满意度。本项目的研究意义在于,一方面,它能够打破传统阅读方式的局限性,将读者从单一的文本阅读中解放出来,通过社交互动增加阅读的趣味性和深度,促进知识的交流与共享;[10] 陆建平, 张小龙, 翁凯迪, 丁志千, 傅书畅, 赵大禹. 基于Java的储罐安全管理平台设计与实现[J]. 化工装备技术, 2021, 42 (04): 34-38。

英熙学姐毕设 930

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

EhViewer完整指南:掌握这款高效Android漫画阅读器的5个实用技巧

EhViewer是一款基于Material Design 2设计风格的Android漫画阅读器应用,为漫画爱好者提供了流畅的阅读体验和强大的管理功能。这款开源应用支持多种漫画浏览功能,让你在手机上轻松享受高质量的漫画阅读。无论你是初次接触漫画阅读器的新手,还是希望寻找更优秀替代方案的老用户,本指南都将帮助你全面了解EhViewer的各项功能和使用技巧。 ## 📱 项目简介与核心价值 EhVi

gitblog_00248的博客 827

基于Android的图书社交阅读APP(程序+开题报告)(开题报告+源码)

基于Android的图书社交阅读APP的开发,旨在结合阅读与社交功能,为读者提供一个既能满足阅读需求又能分享阅读体验的平台,从而丰富人们的阅读生活。该APP不仅能够让用户随时随地享受阅读的乐趣,还能够通过社交功能连接志同道合的读者,共同分享阅读心得和推荐书籍,形成积极向上的阅读氛围。该应用旨在为用户提供一个功能全面、操作简便、界面友好的社交阅读平台,使用户能够在享受阅读的同时,轻松地与其他读者交流想法,分享感受,进而提升阅读的社交价值和知识共享的效率。最终成品以下面运行环境。要本源码参考请在文末进行获取!

萧达毕设程序 1024

秒懂全文:盘点13个各具特色的AI智能阅读助手工具

Kimi Chat 是以无损超长记忆为特色的 AI 阅读助手,是首个支持20万汉字的智能助手。FlowUs AI 是一款以在线协作文档、知识库为载体的AI阅读工具,提供了AI PDF阅读和 Q&A的知识库对话模式两种阅读模式。Wetab AI 是一款内置于浏览器新标签页的 AI 阅读助手,主要优点为方便使用浏览器随时随地访问。包阅 AI 是一款支持多种格式内容的 AI阅读助手,能够辅助用户高效提炼信息。灵办AI 是一款集AI阅读、AI 翻译、AI写作、AI对话生成等功能于一体的全能在线智能助手。

效率研究所 2451

安卓手机ppt阅读器_PC上一款非常好用的PDF阅读器,免费格式转换、支持云端同步...

目前市面上PDF阅读器有很多,但是要真正做到免费格式转换,云端同步的阅读器确实为数不多,分享个好用的PDF阅读器吧!福昕阅读器领鲜版:https://www.foxitsoftware.cn/pdf-reader-plus/10月22日发布的最新版本10.0.321.36155,更新了启动页01 新建PDF有多种打开方式,特别要说的是云文档打开,这是领鲜版比福昕阅读器多出来的一个功能。云文档是福昕...

weixin_39923599的博客 727

Now in Android:01 - 如何掌握最新的 Android 技术?

每隔几天我都会通过 Android Developers 的油管官方频道,来了解一下最近 Android 发布了哪些有趣的新技术,最近发现官方推出了一个新的系列视频叫做:Now in Android,目前更新了 4 期,我觉得这个系列蛮有趣的,这周会把已上线的 4 期视频结合自己的理解为大家分享一下,如果你不知道什么是 Now in Android,那么别急,一会就告诉你。 在开始今天的推送之前...

Victoriaaa丶的博客 442

安卓手机ppt阅读器_PC上一款非常好用的PDF阅读器,支持免费格式转换、支持云端同步...

目前市面上PDF阅读器有很多,但是要真正做到免费格式转换,云端同步的阅读器确实为数不多,分享个好用的PDF阅读器吧!福昕阅读器领鲜版:福昕阅读器领鲜版下载_支持PDF合并、PDF拆分及旋转的PDF阅读器_福昕官网​www.foxitsoftware.cn 10月22日发布的最新版本10.0.321.36155,更新了启动页01 新建PDF有多种打开方式,特别要说的是云文档打开,这是领鲜版比福昕阅读...

weixin_39747341的博客 396

Android 入门第一讲01-安卓介绍+UI介绍(新建as项目,ui开发常见控件介绍,布局介绍)

安卓入门第一讲-UI 学了安卓有啥用? 1.可以参加服务外包比赛(含金量高) 2.毕业设计 设计你的应用产品+文档介绍 3.Android实习 4.找工作 移动端开发 (深圳百度腾讯安卓方向薪资) Android stduio的使用 1.新建项目 提示:kotlin语言是谷歌针对安卓开发推出的语言,语法和Java类似,目前来看更多人用的是java,这里我们用java 关于UI开发 每一个页面对应一个activity android中所有的页面开发一般是写在xml文件 每一个activity会有

Rose J 的博客 1260

(开题)flask框架基于Android的图书社交阅读APP(程序+论文+python)

在数字化阅读日益盛行的今天,图书阅读已经不仅仅是一种个人行为,更逐渐演变成为一种社交活动。随着移动互联网技术的不断进步,智能手机和平板电脑等移动设备成为了人们日常阅读的主要工具。然而,当前的图书阅读APP大多只关注阅读本身,忽略了读者之间的交流与互动。因此,开发一款基于Android平台的图书社交阅读APP,旨在将图书阅读与社交功能相结合,为读者提供一个既能享受阅读乐趣,又能与他人分享阅读心得的平台,具有重要的现实意义。

宇澄学长-毕设 1358

解决安卓手机不能看chm文件的一种思路

现在很多电子书和文档的格式是chm格式,这种比txt格式更加清晰,更有结构性,但是chm基本只能在电脑上看,对与想在手机上看电子书的同学就是一个悲剧,因为现在基本没有什么阅读器支持chm文件,比如ireader QQ阅读器等。chm文件是由html文件编译而成的,而现在APP发展的一个趋势是跨平台的HTML5,都是html文件,可以向办法,把这二者结合起来。       1.先将chm文件反编译

既然目标是地平线 留给世界的只能是背影 9928

(开题)flask框架基于Android手机小说阅读APP0(程序+论文+python)

在数字化阅读日益盛行的今天,手机小说阅读已成为众多读者休闲娱乐的重要方式。随着移动互联网技术的飞速发展,Android作为市场占有率最高的移动操作系统之一,为小说阅读APP提供了广阔的发展空间。然而,当前市场上的小说阅读APP种类繁多,但普遍存在界面设计单一、小说分类不够细致、用户体验不佳等问题。因此,开发一款基于Android平台,集丰富小说资源、个性化推荐、便捷阅读体验于一体的小说阅读APP,以满足广大读者的多样化需求,具有重要的现实意义。

bishe507的博客 960
上一篇: Android 文档的阅读顺序
下一篇: Android文档阅读02—解析Android程序
afeitech
博客等级 码龄19年 0粉丝 0原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值