Android移动应⽤基础教程知识整理
第⼀章
⼀、搭建Android开发环境
Android开发环境的搭建分为3步,具体如下:
android学习教程1. Android Studio⼯具的下载、安装、以及相关配置。在安装过程中选择该⼯具的安装路径,以及配置Android Studio相关设置,如
Android Studio⼯具的主题。
2. 创建模拟器。⾸先单击ADV Manager的图标,在弹出框中选择模拟设备,接着下载Android SDK System Image,下载完成后创建
并打开模拟设备。
3. 下载SDK。分别在Default Settings窗⼝中下载SDK版本和SDK Tools⼯具。
⼆、Android源代码的编译过程
Java源⽂件经过JDK编译器编译为class⽂件后,Dalvik虚拟机中的Dx⼯具会将部分class⽂件转换成dex⽂件,dex⽂件还会在Dalvik虚拟机中进⼀步优化成odex⽂件。
三、Android系统架构包含的层次以及各层的特点
Android系统架构从⾼到低分为四层,分别为依次是应⽤程序层(Applications)、应⽤程序框架层(Application Framework)、核⼼类库(Libraries)和Linux内核(Linux Kernel),各层的特点具体如下:
1. 应⽤程序层:⼀个核⼼应⽤程序的集合,安装在⼿机中的应⽤程序都属于这⼀层。
2. 应⽤程序架构层:主要提供了构建应⽤程序时⽤到的各种API。例如活动管理器(Activity Manager)。
3. 核⼼类库:主要包含了系统库和Android运⾏环境。
4. Linux内核:他为Android设备的各种硬件提供了底层的驱动,如:显⽰驱动。
第⼆章
Android中的常⽤布局及其特点。
Android中有五种常⽤布局,分别为RelativeLayout(相对布局)、LinearLayout(线性布局)、FrameLayout(帧布局)、TableLayout(表格布局)、ConstraintLayout(约束布局),他们的特点具体如下:
(1) RelativeLayout(相对布局):该布局是通过相对位置的⽅式指定该布局内⼦控件的位置。
(2) LinearLayout(线性布局):该布局可通过android:orientation属性指定该布局内的⼦控件⽔平和竖直排列。
(3) TableLayout(表格布局):采⽤⾏、列的形式来管理控件。他通常搭配TableRow布局使⽤,⼀个TableRow代表⼀⾏,在TableRow中添加的控件代表⼀列。
(4) FrameLayout(帧布局):该布局会在屏幕上创建⼀块空⽩区域,添加到该区域中的每个⼦控件占⼀帧,这些帧会⼀个⼀个叠加在⼀起,后加⼊的控件会叠加在上⼀个控件上层。默认情况下,帧布局中的所有控件会与左上⾓对齐。
(5) ConstraintLayout(约束布局):该布局是Android2.2新添加的布局,他适⽤于可视化的⽅式编写界⾯布局,他有相对定位、居中定位和倾向、Chain等性质。
第三章
⼀、ListView与RecyclerView的区别
1、展⽰效果:RecyclerView控件可以通过LayoutManager类实现横向或竖向的列表效果、瀑布流效果和GridView效果,⽽ListView控件只能实现竖直的列表效果。
2、适配器:RecyclerView控件使⽤的是RecyclerView.Adapter适配器,该适配器将BaseAdapter中的getView()⽅法拆分为onCreateViewHolder()⽅法和onBindViewHolder()⽅法,强制使⽤ViewHolder类,使代码编写规范化,避免了初学者写的代码性能不佳。
3、复⽤效果:RecyclerView控件复⽤Item对象的⼯作由该控件⾃⼰实现,⽽ListView控件复⽤Item对象的⼯作需要开发者通过convertView的setTag()⽅法和getTag()⽅法进⾏操作。
4、动画效果:RecyclerView控件可以通过setItemAnimator()⽅法为Item添加动画效果,⽽ListView控件不可以通过该⽅法为Item添加动画效果。
⼆、实现Button按钮的点击事件的⽅式
实现Button按钮的点击事件⼀共有3种⽅式,具体如下:
1、 在布局⽂件中指定onClick属性的⽅式设置点击事件。
2、使⽤匿名内部类的⽅式设置点击事件。
3、通过为Activity实现OnClickListener接⼝的⽅式设置点击事件。
三、AlertDialog对话框的创建过程
1、 调⽤AlertDialog的静态内部类Builder创建AlertDialog.Builder的对象。
2、 调⽤AlertDialog.Builder的setTitle()和setIcon()⽅法分别设置AlertDialog对话框的标题名称和图标。
3、 调⽤AlertDialog.Builder的setMessage()、setSingleChoiceItems()或者setMultiChoiceItems()⽅法设置AlertDialog对话框的内容为简单⽂本、单选列表或者为多选列表。
4、 调⽤AlertDialog.Builder的setPositiveButton()和setNegativeButton()⽅法设置AlertDialog对话框的确定和取消按钮。
5、 调⽤AlertDialog.Builder的create()⽅法创建AlertDialog对象。
6、 调⽤AlertDialog对象的show()⽅法显⽰该对话框。
7、 调⽤AlertDialog对象的dismiss()⽅法取消该对话框。
第四章
⼀、Activity的⽣命周期的⽅法
Activity⼀共有7个⽅法,这些⽅法和调⽤的时机具体如下:
(1) onCreate():Activity创建时调⽤,通常做⼀些初始化设置。
(2)onStart():Activity即将可见时调⽤。
(3)onResume():Activity获取焦点时调⽤。
(4)onPause():当前Activity被其他Activity覆盖或屏幕锁屏时调⽤。
(5)onStop():Activity对⽤户不可见时调⽤。
(6)onDestroy():Activity销毁时调⽤。
(7)onRestart():Activity从停⽌状态到再次启动时调⽤。
⼆、Activity的四种启动模式及其特点
Activity的四种启动模式分别为standard、singleTop、singleTask和singleInstance,这些模式的特点具体如下:
(1)standard:每启动⼀个Activity就会在栈顶创建⼀个新的实例。
(2)singleTop:当被启动的Activity位于栈顶时,复⽤该Activity实例。
(3) singleTask:当被启动的Activity在栈中存在实例时,会直接复⽤此Activity实例,并把当前Activity上⾯的所有实例弹出栈。
(4) singleInstance:会启动⼀个新的任务栈来管理该Activity。
三、Activity、Intent、IntentFilter的作⽤
Activity表⽰活动,他是Android的四⼤组件之⼀,Intent表⽰意图,IntentFilter表⽰过滤器,他们的作⽤具体如下:
(1)Activity是⼀个负责与⽤户交互的组件,每个Android应⽤中都会⽤Activity来显⽰界⾯以及处理界⾯上⼀些控件的事件。
(2) Intent被称为意图,是程序中各组件间进⾏交互的⼀种重要⽅式,它不仅可以指定当前组件要执⾏的动作,还可以在不同组件之间进⾏数据传递。
(3) IntentFilter为过滤器,当发送⼀个隐式Intent后,Android系统会将它与程序中的每⼀个组件的过滤器进⾏匹配,匹配属性有 action、data、category,需要这三个属性都匹配成功才能唤起相应的组件。
第五章
⼀、数据库事物的4个基本要素要素
事务的操作⽐较严格,他必须满⾜ACID,ACID是指数据库事务正确执⾏的四个基本要素的缩写,这些要素包括原⼦性(Atomicity)、⼀致性(Consistency)、隔离性(Isolation)、持久性(Durability),接下来针对这四个基本要素进⾏详细解释。
l 原⼦性:表⽰事务是⼀个不可再分割的⼯作单位,事务中的操作要么全部成功,要么全部失败回滚。
l ⼀致性:表⽰事务开始之前和结束之后,数据库的完整性没有被破坏。也就是说数据库事务不能破坏关系数据的完整性以及业务逻辑上的⼀致性。
l 隔离性:表⽰并发的事务是相互隔离的,也就是⼀个事务内部的操作都必须封锁起来,不会被其他事务影响到。
l 持久性:表⽰事务⼀旦提交后,该事务对数据做的更改便持久保存在数据库中,并不会被回滚,即使出现了断电等事故,也不会影响数据库中的数据。
⼆、Android数据存储的⽅式
Android平台提供的五种数据存储⽅式,分别为⽂件存储、SharedPreferences、SQLite数据库、ContentProvider和⽹络存储,这些存储⽅式的特点如下。
l ⽂件存储:Android提供了openFileInput()和openFileOutput()⽅法来读取设备上的⽂件,其读取⽅式与Java中I/O程序是完全⼀样的。
l SharedPreferences:这是Android提供的⽤来存储⼀些简单的配置信息的⼀种机制,他采⽤了XML格式将数据存储到设备中。通常情况下,我们使⽤SharedPreferences存储⼀些应⽤程序的各种配置信息,如⽤户名、密码等。
l SQLite数据库:SQLite是Android⾃带的⼀个轻量级的数据库,他运算速度快,占⽤资源少,还⽀持基本SQL语法,⼀般使⽤他作为复杂数据的存储引擎,可以存储⽤户信息等。
l ContentProvider:Android四⼤组件之⼀,主要⽤于应⽤程序之间的数据交换,他可以将⾃⼰的数据共享给其他应⽤程序使⽤。
l ⽹络存储:需要与Android⽹络数据包打交道,将数据存储到服务器上,通过⽹络提供的存储空间来存储/获取数据信息。
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论