01 - Android系统架构

一、 Android系统架构

架构图:
在这里插入图片描述

1.1 Linux 内核层

  • Android系统是基于Linux内核的, 这一层为Android设备的各种硬件提供了底层的驱动, 如显示驱动、蓝牙驱动、WIFI驱动、音频驱动、照相机驱动、电源管理等;

1.2 系统运行库层

  • 这一层会通过一些C/C++库来为Android系统提供主要的特性支持。如SQLite库提供了数据库的支持, OpenGL|ES库提供了3D绘图的支持, Webkit库提供了浏览器内核的支持等;
  • 在这一层里面还有Android运行时库, Android Runtime, 它主要提供了一些核心库, 能够允许开发者使用Java语言来编写Android应用。另外, Android运行时库还包括了Dalvik虚拟机(5.0系统之后改为ART运行环境),它使得每一个Android应用都能运行在独立的进程中, 并且拥有一个自己的Dalvik虚拟机实例。相较于Java虚拟机, Dalvik是专门为移动设备定制的, 它针对手机内存、CPU性能有限等情况做了优化处理;

1.3 应用框架层

  • 这一层主要提供了构建应用程序时可能用到的各种API, Android自带的一些核心应用就是使用这些API完成的, 开发者也可以通过使用这些API来构建自己的应用程序;

1.4 应用层

  • 所有安装在手机上的应用程序都是属于这一层的, 比如系统自带的联系人、短信等程序, 或者是你从Google Play上下载的小游戏, 当然还有自己开发的APP

二、 Android 应用开发特色

2.1 四大组件

  • Android 的四大组件分别是Activity(活动)、Service(服务)、Broadcast Receiver(广播接收器)和Content Provider(内容提供器)
  • Activity是所有应用程序的门面, 在应用中可以看到的全是在活动中。
  • Service无法被看到, 会一直在后台默默的运行, 即使应用退出, 服务仍然可以继续运行, 比如下载, 就是挂到后台运行的服务;
  • Broadcast Receiver可以向外发出广播消息, 当然也可以接收来自各处的广播消息(应用本身, 或者其他应用), 比如电话,短信等等。
  • Content Provider, 则是让应用之间可以共享数据, 比如,你开发的应用需要系统电话簿中的联系, 就像抖音的根据电话联系人关联用户进行应用内关注, 这就需要通过内容提供器来实现;

2.2 丰富的系统控件

  • Android系统为开发者提供了丰富的系统控件, 这样就可以设计编写出很漂亮的UI界面, 如果觉得系统自带的控件的效果不好, 还可以定制自己的控件。

2.3 SQLite数据库

  • Android系统还自带了像SQLite这种轻量级, 运算速度极快的嵌入式关系型数据库。它不仅支持标准的SQL语法, 还可以通过Android封装好的API进行操作, 让存储和读取数据变得非常方便;

2.4 强大的多媒体

  • Android系统还提供了丰富的多媒体服务, 如音乐、视频、录音、拍照、闹铃等等,这一切你都可以在程序中通过代码进行控制, 让你的应用变得更加丰富多彩;

2.5 地理位置定位

  • 移动设备和PC相比起来, 地理位置定位功能是一个很大的特色。现在的Android手机中都内置有GPS, 走到哪里都可以定位到自己的位置, 再结合功能强大的地图功能, LBS(基于位置服务)这一领域将潜力无限。(比如, 美团外卖就可以根据定位的位置, 找到附近的店家)

三、 准备开发所需要的工具

  • JDK : JDK 是Java语言的软件开发工具包, 它包含了Java的运行环境、工具集合、基础类库等内容。开发使用JDK 8以上的版本最好。
  • Android SDK。Android SDK是谷歌提供的Android开发工具包, 在开发Android程序时, 需要通过引入该工具包, 来使用Android相关的API;
  • Android studio : Android studio是Google推出的一款官方的IDE工具, 取代了之前的Eclipse +ADT 插件的开发;
  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值