美文网首页
Android学习(一)—— 基本概况

Android学习(一)—— 基本概况

作者: LongSh1z | 来源:发表于2019-04-26 16:10 被阅读0次

该Android学习系列主要是参考郭神的第一行代码(第二版)来学习的,目的是在学习的过程中记录下一些重要的知识点,不喜勿喷,谢谢。


目录结构

一、Android系统架构

1.架构图

2.层级说明

3.Android应用开发特色

4.程序的项目结构(项目结构模式为project)

5.app目录下的主要内容具体分析

6.全局build.gradle文件讲解

7.app目录下build.gradle文件讲解


一、Android系统架构

1.架构图

2.层级说明

(1)Linux内核层

 Android系统是基于Linux内核的,这一层为Android设备的各种硬件提供了底层的驱动,如显示驱动,音频驱动等。

(2)系统运行库层

 这一层通过一些C/C++库来为Android系统提供了主要的特性支持。如OpenGL|ES库提供了3D绘图的支持。同时,这一层还有Android运行时库,它主要提供了一些核心库,能够允许开发者使用Java来编写Android应用。另外,它还包含了Dalvik虚拟机,能够使得每一个Android应用都能运行在独立的进程当中,并且拥有一个自己的Dalvik虚拟机实例。相比于Java虚拟机,它是专门为移动设备定制的,针对手机内存,CPU性能有限等情况做了优化处理。

(3)应用框架层

这一层主要提供了构建应用程序时可能用到的各种API。

(4)应用层

所有安装在手机上的应用程序都属于这一层。

现在好像多了一层,硬件抽象层。是由于制作手机的工厂不愿意分享源码导致!如下图所示:

新版架构图

3.Android应用开发特色

(1)四大组件

Activity(活动):是所有Android应用程序的门面,凡是在应用中看到的东西都是放在activity中的。

Service(服务):前台看不到,是在后台默默运行的,即使退出应用service仍然可以继续运行。

Broadcast Receiver(广播接收器):它允许你的应用接收或者发出广播消息。

Content Provider(内容提供器):它为应用程序之间共享数据提供了可能。

(2)丰富的系统控件

(3)SQLite数据库

(4)强大的多媒体

(5)地理位置定位

4.程序的项目结构(项目结构模式为project)

(1)总览图

(2).gradle和.idea

这两个目录下放置的是Android Studio(以下简称为AS)自动生成的一些文件。

(3)app

项目中的代码、资源等内容几乎都是放置在该目录下。

(4)build

它主要包含了一些在编译时自动生成的文件。

(5)gradle

这个目录下包含了gradle wrapper的配置文件,使用gradle wrapper的方式不需要提前将gradle下载好,而是会自动根据本地的缓存情况决定是否需要联网下载gradle。AS默认没有开启。

(6).gitignore

该文件是用来将指定的目录或文件排除在版本控制之外。

(7)build.gradle

这是项目全局的gradle构建脚本。

(8)gradle.properties

该文件是全局的gradle配置文件,在这里配置的属性将会影响到项目中所有的gradle编译脚本。

(9)gradlew和gradlew.bat

这两个文件是用来在命令行中执行gradle命令的,前者是在Linux或Mac系统中使用,后者是在Windows系统中使用。

(10)local.properties

该文件用来指定本电脑中Android SDK的路径。

(11)MyCat.iml

iml文件是所有IntelliJ IDEA项目都会自动生成的一个文件(AS也是其旗下的一款软件),用来标识这是一个IntelliJ IDEA项目。

(12)settings.gradle

该文件用于指定该项目中引入的模块。 

5.app目录下的主要内容具体分析

(1)总览图

(2)libs

该目录主要放置一些第三方的jar包。

(3)androidTest

此处是用来编写Android Test测试用例的,可以对项目进行一些自动化测试。

(4)java

该目录是放置所有Java代码的地方。

(5)res

该目录主要放置项目中用到的所有图片、布局、字符串等资源。其中,drawable目录放置图片,layout目录放置布局,values目录放置字符串。

(6)AndroidManifest.xml

它是整个Android项目的配置文件。

(7)build.gradle

这是app模块的gradle构建脚本。

6.全局build.gradle文件讲解

(1)文件内容

(2)jcenter

其实它是一个代码托管仓库,很多Android开源项目都会选择将代码托管到 jecnter 中,声明了这行配置之后,我们就可以在项目中引用任何jcenter上的开源项目了。

(3)classpath

dependency闭包中使用了classpath声明了一个Gradle插件。因为它不是专门为构建Android项目开发的,Java、C++等都可以使用Gradle来构建,所以我们要想使用它来构建Android项目就需要声明这个插件。

7.app目录下build.gradle文件讲解

相关文章

  • Android学习(一)—— 基本概况

    该Android学习系列主要是参考郭神的第一行代码(第二版)来学习的,目的是在学习的过程中记录下一些重要的知识点,...

  • 基本概况

    本人概况: 男76年11月天蝎座,籍贯黑龙江,非京户。身高185cm体重78kg。互联网教育,IT技术管理工作,有...

  • 基本概况

    起因于2018年大年初二。我在封闭的房间里面心脏忽然减缓跳动,突然不适,10秒钟不到不省人事。家人打120到河源市...

  • USDT基本概况

    在每天波动剧烈加密货币交易市场,急需这样的一种即稳定又能规避风险的币种: 1:这种币的币值(兑法币)稳定,不随其他...

  • ArcGIS基本概况

    功能 创建和使用地图 编辑地理数据 管理数据库中的地理信息 分析地理信息 共享和显示地理信息 在一系列应用程序中使...

  • Android回顾--(一) 概况

    Android是什么? Android体系架构 System Apps:Android系统用户进行交互的应用层,我...

  • Volley学习

    Volley学习 参考文章 Android Volley完全解析(一),初识Volley的基本用法Android ...

  • 学习概况

    ——志存高远 大学以来,原本动物科学专业的我,转专业到了自动化系,从此开始了一名工科男的生活。我学会了硬件电路,...

  • yield的基本概况

    yield 简单地讲,yield 的作用就是把一个函数变成一个 generator,带有 yield 的函数不再是...

  • 210615.《Learning Android中文版》学习笔记

    《Learning Android中文版》学习笔记03 基本构件 本章介绍Android应用的基本组成部分:构件(...

网友评论

      本文标题:Android学习(一)—— 基本概况

      本文链接:https://www.haomeiwen.com/subject/ncqxnqtx.html