Android基础开发
CH01 Android简介与环境搭建
Android软件结构层次:
- (1)Linux内核层相关驱动,C
- (2)核心类库(Libaries)和运行时环境(Runtime),C\C++
- (3)应用程序框架(Application Framework),Java,系统服务API
- (4)应用程序(Application),Java
逐层介绍:
- Linux内核层
(1)硬件和其他软件堆层之间的一个抽象隔离层
(2)提供安全机制、内存管理、进程管理、网络协议堆栈和驱动程序等核心系统服务
2.核心类库和运行时环境层
- 核心类库:由核心运行库和Android运行时环境构成函数库,主要提供一组基于C/C++的函数库
(1)Surface Manager,提供应用程序的2D、3D图像层的平滑连接
(2)Media Framework,实现音视频的播放和录制功能
(3)SQLite,轻量级的关系数据库引擎
(4)OpenGL ES,基于3D图像加速
(5)FreeType,位图与矢量字体渲染
(6)WebKit,Web浏览器引擎
(7)SGL,2D图像引擎
(8)SSL,数据加密与安全传输的函数库
(9)Libc,标准C运行库,Linux系统中底层应用程序开发接口
- Android运行时环境
(1)核心库,提供Android系统特有函数功能和Java语言函数功能
(2)Dalvik虚拟机,实现基于Linux内核的线程管理和内存管理
(3)Android5.0开始,ART取代了Dalvik虚拟机
3.应用程序框架层
- 提供Android平台基本的管理功能和组件重用机制
- Activity Manager,管理应用程序的生命周期
- Windows Manager,启动应用程序的窗体
- Content Provider,共享私有数据,实现跨进程的数据访问
- Package Manager,管理安装在Android系统内的应用程序
- Telephony Manager,管理与博大和接听电话的相关功能
- Resource Manager,允许应用程序使用非代码资源
- Location Manager,管理与地图相关的服务功能
- Notification Manager,允许应用程序在状态栏中显示提示信息
- 提供一系列的核心应用程序,包括电子邮件客户端、浏览器、通讯录和日历等。
第一个Android程序
一、Android Studio视图:
(1)列出一个工程的常用文件夹
(2)Gradle文件单独列出,方便修改,推荐使用
(1)以Project为根目录列出
(2)一般的工程常用的是一个app模块
(3)可看到工程中所有文件
(1)以包为单位列出所有的源代码及资源
二、Android程序结构
-
Java目录是源代码目录,所有的Java文件都保存在此目录
-
Activity VS AppCompatActivity
(1)在早期的Eclipse环境中,默认继承Activity
(2)在最新的AS环境中,API Level>19时,默认继承AppCompatActivity
(3)MainActivity.java
-
build目录用来保存编译后自动生成的文件,例如:R.java或AIDL文件
-
R.java文件是自动生成的文件,包含对drawable、layout和values目录内的资源的引用ID,Android程序能够直接通过R类引用目录中的资源。
(1)R.java文件不能手工修改,如果资源目录中增加了资源文件后会自动添加
(2)R.java文件在AS中默认不可见
-
res:目录中存储工程的所有资源
- drawable:图片资源
- layout:布局资源
- mipmap:图片资源
- values:常量配置资源
- colors:颜色
- dimems:距离,长度
- strings:字符常量
- sytles:主题,样式
- 各个文件含义解析
- main.xml
- string.xml:文件定义项目中用到的字符串常量
- AndroidManifest.xml:是XML格式的Android程序声明文件,包含了运行Android程序的重要信息,这些信息包含应用程序名称、图标、包名称、模块组成、授权和SDK最低版本等。(每个Android程序必须包含一个AndroidManifest.xml文件)
- AndroidManifest.xml文件的根元素是manifest,子属性包括xmlns:android、package、android:versionCode和android:versionName等
- xmlns:android定义了Android的命名空间
- package定义了应用程序的包名称
3.android:versionCode定义了应用程序的版本号,是一个整数值,数值越大说明版本越新,但仅在程序内部使用,并不是字符串,仅限于为用户提供一个版本标识
4.manifest元素仅能包含一个application元素,application元素中能够声明Android程序中最重要的四个组成部分,包括Activity、Service、BroadcastReceiver和ContentProvider,所定义的属性将影响所有组成部分。
(1)属性android:icon定义了Android应用程序的图标,其中@mipmap/ic launcher是一种资源引用方式,表示资源类型是图像,资源名称为ic launcher,对应的资源文件为res/mipmap目录下的ic_launcher.png
(2)属性android:label则定义了Android应用程序的标签名称。
- activity元素是对Activity子类的声明,必须在AndroidManifest.xml文件中声明的Activity才能在用户界面中显示
(1)属性android:name定义了实现Activity类的名称,可以是完整的类名称,也可以是简化后的类名称。
(2)属性android:label则定义了Activity的标签名称,标签名称将在用户界面的Activity上部显示,@string/app_name属于资源引用,表示资源类型是字符串,资源名称为app_name,资源保存在res/values目录下的strings.xml文件中。
- intent-filter中声明了两个子元素action和category,intent-filter使程序在启动时,将MainActivity这个Activity作为默认启动模块。
CH02 Android用户界面基础
Android四大基本组件
Android四大基本组件:
活动(Activity)
Activity是最基本的Android应用程序组件,应用程序中,一个Activity通常就是一个单独的屏幕。每个Activity都被实现为一个独立的类,并且从Activity类继承而来,Activity类会提供视图控制组件的用户接口,并对事件作出相应,大多数应用程序都是由多个Activity组成的。
来源:https://www.cnblogs.com/fairy-mr/p/14060049.html |