学习Android的同学注意了!!!

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Android学习交流群,群号码:364595326  我们一起学Android!

一、Android的系统体系结构

在入门了一个简单的Android的Hello World以后,我们首先来看一下我们Android的整体系统架构图:


这个就是我们Android的整体系统架构图了,我们首先从整体上来看看Android的体系结构。

Linux Kernel:我们知道Android其实就是一个操作系统,其底层是基于Linux Kernel的,这一层主要完成的是操作系统所具有的功能,比如这一层有许多的驱动程序,正是通过这些驱动程序来驱动我们设备上的硬件设备的。

Android Runtime:Android的运行环境,我们学过java的都知道,java程序的运行需要java的核心包的支持,然后通过JVM虚拟机来运行我们的应用程序,这里Android Runtime里的Core Libraries就相当于java的JDK,是运行android应用程序所需要的核心库,Dalvik Virtual Machine就相当于JVM,这时Google专为Android开发的运行android应用程序所需的虚拟机。

Liberaries:这里面都是Android的库文件,例如我们访问SQLite数据库的库文件等等。

Application Framework:应用程序的框架,这个是非常的重要的,相信Framework这个词大家都应该非常的熟悉了,我们学习Android也主要学的就是这一层,我们通过这些各种各样的框架来实现我们的Application。

Application:这个就是我们开发的Application了。

二、Android的四种常用组件

我们现在推崇的软件开发就是基于组件来开发的,组件就类似于电脑的硬件一样,我如果要组装一台电脑,可以直接通过购买各个硬件然后将其组装在一起,对于软件来说,组件就类似于这个,我们开发一个软件,可以直接将这些组件组合在一起就行了。

Android一共有四种常用的组件:

Activity、Service、ContentProvider、BroadcastReceiver

Activity:Activity就是我们应用程序的界面,主要用来跟我们的用户进行交互的,比如一个文本框,按钮这些就是显示在Activity上的,并且可以接收数据,传递数据到后台,然后再显示出来。

Service:Service我们是看不见的,对于绝大部分的数据的处理,业务的处理都是通过Service来完成的。

ContentProvider:ContentProvider类似于我们的档案馆,里面存放了我们的各种数据,例如通讯录中的信息等,这个组件就是运行程序对其进行访问,然后得到里面的数据。

BroadcastReceiver:BroadcastReceiver组件是广播接收器,主要是用来监听系统的各个行为的,例如当电量不足的时候会给我们发送一条广播信息。

三、Activity的启动流程

我们在大致了解了Android的体系结构后,我们就可以开始进行我们的代码操作了,首先我们来看看Activity的一个启动流程:


学习Android的同学注意了!!!

学习过程中遇到什么问题或者想获取学习资源的话,欢迎加入Android学习交流群,群号码:364595326  我们一起学Android!

更多相关文章

  1. Android(安卓)三类框架的理解以及MVVM框架的使用
  2. Android(安卓)API Guides--Application Fundamentals
  3. 在程序中设置android:gravity 和 android:layout_Gravity属性
  4. android 编程基础
  5. 【Android布局】在程序中设置android:gravity 和 android:layout
  6. Android之抽屉效果(自定义、GridView、SlidingDrawer结合)案例
  7. 【Android布局】在程序中设置android:gravity 和 android:layout
  8. 百度地图android客户端的AndroidMainfest.xml的学习和android版
  9. 【Android(安卓)清单文件下的 Activity各种配置详解】

随机推荐

  1. 相似的故事总是在重复着
  2. 又升了一版「Java面试题小程序」
  3. 《Java8实战》读书笔记
  4. 学历不够,连 Java 面试的机会都没,怎么破?
  5. 大行情如此之差,我们搞 Java 的该如何面对
  6. 【MySQL】数据库版本升级:mysql 5.6 升级
  7. 《Java编程思想(第4版)》读书笔记
  8. 几款代码高亮组件的体验,说不定你以后会用
  9. 单例模式,这个面试题真那么简单吗?
  10. 分享 1 个一次性免费获得极客时间 2-3 个