Android环境搭建
前提是已经安装配置好了Java的环境变量
AS下载
直接去google的官网下载:
https://developer.android.google.cn/studio/
下载完成之后直接安装就可以用了!
AS安装
第一种是以程序的形式来安装,直接运行安装文件: 直接点击一下步,next
到这里的话,我们就安装好AS了。
AS第一个HelloWorld
打开AS软件
选择Start a new android Studio project
,进入下面页面
这里选择创建一个空的活动Empty Activity
,点击Next
填好项目相关信息,点击Finish
,进入AS主页面
values 常量
onRestart
public class MainActivity extends Activity {1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
- colors.xml
- strings.xml
- styles.xml
# Android概述
## 什么是 Android?
`Android` 是一个开源的,基于 Linux 的移动设备操作系统,如智能手机和平板电脑。`Android` 是由**谷歌**及其他公司带领的开放手机联盟开发的。
`Android` 提供了一个统一的应用程序开发方法,这意味着开发人员只需要为 `Android` 进行开发,这样他们的应用程序就能够运行在不同搭载 `Android` 的移动设备上。
谷歌在2007年发布了第一个测试版本的 Android 软件开发工具包(SDK),第一个商业版本的 Android 1.0,则发布于2008年9月。
2012年6月27日,在谷歌I/O大会上,谷歌宣布发布了 Android 版本4.1 Jelly Bean。 Jelly Bean 是一个在功能和性能方面的渐进的更新,主要目的是改进用户界面
Android 源代码是根据自由和开放源码软件许可证。谷歌发布的大部分代码遵循 Apache 许可证2.0版,Linux 内核的变化遵循 GNU 通用公共许可证版本2。
## Android 开发优势
- 开放源代码
- 众多开发者及强大的社区
- 不断增长的市场
- 国际化的 App 集成
- 低廉的开发成本
- 更高的成功几率
- 丰富的开发环境
## Android 的历史
Android 的代码名称现在从 `A `排到了` L`,分别是 Aestro, Blender, Cupcake, Donut, Eclair, Froyo, Gingerbread, Honeycomb, Ice Cream Sandwitch, Jelly Bean, KitKat and Lollipop。让我们按顺序了解 Android 的历史。
- 纸杯蛋糕 (Cupcake)
- 甜甜圈 (Donut)
- 闪电泡芙 (Eclair)
- 冻酸奶 (Froyo)
- 姜饼 (Gingerbread)
- 蜂巢 (Honeycomb)
- 冰淇淋三明治 (Ice Cream Sandwich)
- 果冻豆 (Jelly Bean)
- 奇巧 (KitKat)
- 棒棒糖 (Lollipop)
![](https://www.runoob.com/wp-content/uploads/2015/05/jistory.jpg )
## 什么是 API 级别?
API 级别是一个用于唯一标识 API 框架版本的整数,由某个版本的 Android 平台提供。
# Android 架构
`Android` 操作系统是一个软件组件的栈,在架构图中它大致可以分为五个部分和四个主要层。
![](https://www.runoob.com/wp-content/uploads/2015/06/android_architecture.jpg)
## Linux内核
在所有层的最底下是 `Linux` - 包括大约115个补丁的 `Linux` 3.6。它提供了基本的系统功能,比如进程管理,内存管理,设备管理(如摄像头,键盘,显示器)。同时,内核处理所有 Linux 所擅长的工作,如网络和大量的设备驱动,从而避免兼容大量外围硬件接口带来的不便
## 程序库
在 Linux 内核层的上面是一系列程序库的集合,包括开源的 Web 浏览器引擎 Webkit ,知名的 libc 库,用于仓库存储和应用数据共享的 SQLite 数据库,用于播放、录制音视频的库,用于网络安全的 SSL 库等。
## Android程序库
这个类别包括了专门为 Android 开发的基于 Java 的程序库。这个类别程序库的示例包括应用程序框架库,如用户界面构建,图形绘制和数据库访问。一些 Android 开发者可用的 Android 核心程序库总结如下:
- android.app - 提供应用程序模型的访问,是所有 Android应用程序的基石。
- android.content方便应用程序之间,应用程序组件之间的内容访问,发布,-息传递。
- android.database用于访问内容提供者发布的数据,包含-SQLite 数据库管理类。
- android.opengl -OpenGL ES 3D 图片渲染 API 的 Java-接口。
- android.os --提供应用程序访问标注操作系统服务的能力,包括消息,系-服务和进程间通信。
- android.text - 在设备显示上渲染和操作文本。
- android.view - 应用程序用户界面的基础构建块。
- android.widget丰富的预置用户界面组件集合,包括按钮,标签,列表,布-管理,单选按钮等。
- android.webkit --一系列类的集合,允许为应用程序提供内建的 Web-浏览能力。
## Android运行时
这是架构中的第三部分,自下而上的第二层。这个部分提供名为 Dalvik 虚拟机的关键组件,类似于 Java 虚拟机,但专门为 Android 设计和优化。
Dalvik 虚拟机使得可以在 Java 中使用 Linux 核心功能,如内存管理和多线程。Dalvik 虚拟机使得每一个 Android 应用程序运行在自己独立的虚拟机进程。
Android 运行时同时提供一系列核心的库来为 Android 应用程序开发者使用标准的 Java 语言来编写 Android 应用程序。
## 应用框架
应用框架层以 Java 类的形式为应用程序提供许多高级的服务。应用程序开发者被允许在应用中使用这些服务。
- 活动管理者 - 控制应用程序生命周期和活动栈的所有方面。
- 内容提供者 - 允许应用程序之间发布和分享数据。
- 资源管理器 -提供对非代码嵌入资源的访问,如字符串,颜色设置和用户面布局。
- 通知管理器 - 允许应用程序显示对话框或者通知给用户。
- 视图系统 - 一个可扩展的视图集合,用于创建应用程序用界面。
## 应用程序
顶层中有所有的 Android 应用程序。你写的应用程序也将被安装在这层。这些应用程序包括通讯录,浏览器,游戏等。
# Android 应用程序组件
应用程序组件是一个`Android`应用程序的基本构建块。这些组件由应用清单文件松耦合的组织。`AndroidManifest.xml`描述了应用程序的每个组件,以及他们如何交互。
以下是可以在Android应用程序中使用的四个主要组件。
| 组件 | 描述 |
| ------------------------------- | ----------------------------------------- |
| Activities(活动) | 描述UI,并且处理用户与机器屏幕的交互。 |
| Services(服务) | 处理与应用程序关联的后台操作。 |
| Broadcast Receivers(广播接收器) | 处理Android操作系统和应用程序之间的通信。 |
| Content Providers(内容提供者) | 处理数据和数据库管理方面的问题。 |
## Activities
一个活动标识一个具有用户界面的单一屏幕。举个例子,一个邮件应用程序可以包含一个活动用于显示新邮件列表,另一个活动用来编写邮件,再一个活动来阅读邮件。当应用程序拥有多于一个活动,其中的一个会被标记为当应用程序启动的时候显示。
}
1 |
|
public class MyService extends Service {
}
1 |
|
public class MyReceiver extends BroadcastReceiver {
}
1 |
|
public class MyContentProvider extends ContentProvider {
}
```
附件组件
有一些附件的组件用于以上提到的实体、他们之间逻辑、及他们之间连线的构造。这些组件如下:
组件 | 描述 |
---|---|
Fragments | 代表活动中的一个行为或者一部分用户界面。 |
Views | 绘制在屏幕上的UI元素,包括按钮,列表等。 |
Layouts | 控制屏幕格式,展示视图外观的View的继承。 |
Intents | 组件间的消息连线。 |
Resources | 外部元素,例如字符串资源、常量资源及图片资源等。 |
Manifest | 应用程序的配置文件。 |