第一章

一、搭建Android开发环境

Android开发环境的搭建分为3步,具体如下:

  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网络数据包打交道,将数据存储到服务器上,通过网络提供的存储空间来存储/获取数据信息。

Android移动应用基础教程知识整理相关推荐

  1. android 最全 图片相关知识整理

    android 最全 图片相关知识整理 图片基础知识梳理 图片基础知识梳理(1) - ImageView 的 ScaleType 属性解析 图片基础知识梳理(2) - Bitmap 占用内存分析 图片 ...

  2. 创建android程序时 默认使用布局是,《Android移动应用基础教程》中国铁道出版社课后习题(附答案)...

    <Android移动应用基础教程>中国铁道出版社课后习题(附答案) 第2章Android UI开发 一.填空题 1.Android中的布局分为6种,分别是RelativeLayout.Li ...

  3. 《Android移动应用基础教程》(Android Studio)(第二版)黑马程序员 课后习题答案

    <Android移动应用基础教程>(Android Studio)(第二版)黑马程序员 课后习题答案 目录 第1章 Android基础入门 第2章 Android常见界面布局 第3章 An ...

  4. 《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案 第7章

    <Android移动应用基础教程>(Android Studio)(第二版)黑马教程 课后题答案 第7章 一.判断题 1.对 2.对 3.对 4.错 5.对 二.选择题 1.C 2.B 3 ...

  5. 《Android 移动应用基础教程(Android Studio)(第2版)》【课本客观题】+【学习通2023春】【参考答案】

    文章目录 超星学习通智能终端软件开发(基于Android Studio环境)章节作业(39) 一 二 三 四 五 六 课本一 课本二 课本三 课本四 课本五 课本六(无) 课本七 课本八 课本九 课本 ...

  6. android移动应用基础教程--qq账号与密码

    android移动应用基础教程--qq账号与密码 android移动应用基础教程p115案例 实战演练-保存QQ账号密码. activity_main.xml <?xml version=&qu ...

  7. 《Android移动应用基础教程》(Android Studio)(第二版)黑马教程 课后题答案第一章

    <Android移动应用基础教程>(Android Studio)(第二版)黑马教程 课后题答案 第一章 一.填空题 1.dex 2.@color 3.AndroidManifest.xm ...

  8. Android移动应用基础教程(第2版)教学视频、课后题答案、教材源码

    Android移动应用基础教程(第2版) 内含教学视频.课后题答案.教材源码 百度网盘链接: https://pan.baidu.com/s/1loTwVqVC8gX1jY5HD0B1rg 提取码:L ...

  9. android 帐号密码xml,《Android移动应用基础教程》之保存QQ账号和密码

    FileSaveQQ.java package njitt.software.saveqq; import android.content.Context; import java.io.FileIn ...

  10. Android APP完整基础教程(13)应用资源-动画

    动画模式在android系统中被分为三类,分别为: tween(view) animation:补间动画 frame(drawable) animation:逐帧动画 property animati ...

最新文章

  1. 如何用SPY++工具查看窗体的句柄
  2. 例题:学习数据库查询。学生信息表的创建,主外键关系,以及45道题的查询实例。主要知识点在讲页45页,和讲页65页...
  3. Python(27)-模块
  4. 初识 TensorFlow 旅程之一
  5. 程序员问答网站:StackOverflow
  6. 仿XP系统的任务栏菜单
  7. cocos2dx学习:TexturePacker的使用
  8. 函数收敛:就是当x趋于无时,函数有常数c; 数列收敛 :就是当x趋于无穷时,数列x(n)是常数c; 积分收敛:就是当上界趋于无穷时,积分中的函数有常数c,也就是函数围成的面积有常数C。 数列和函
  9. 如何使用TCPA300电流放大器和电流探头进行电流测试
  10. 测量运放的输入偏置电流 - 实验准备
  11. 鸡年年终总结汇报PPT模板
  12. 如何利用新浪博客做外链1
  13. 云计算数据中心网络的关键技术
  14. 用python画哆啦a梦的头_用 Python 画个哆啦A梦
  15. 【Excel】工作表的并排比较
  16. 最近做到一道好题,特来和大家分享一下。
  17. WordPress主题/两栏响应式博客主题:翠竹林CUI v2.06
  18. 题目:一个整数,它加上100后是一个完全平方数,再加上168又是一个完全平方数,请问该数是多少
  19. 异构处理器,SIMD
  20. java 制作简易日历_如何用Java制作一个简易日历

热门文章

  1. ArcCatalog连接PostgreSQL创建SDE库
  2. 牛客网c语言笔试题库,【sql】牛客网练习题 (共 61 题)
  3. JUCE学习笔记04-LookAndFeel类自定义Slider颜色
  4. GPRS核心网-GTP-C协议解析
  5. SEO兵书:搜索引擎优化手册
  6. 阵处理与波束形成学习心得(二)
  7. 巧用PPT模板,远离翻车风险
  8. 金融科技大数据产品推荐:金蜂巢大数据集成与脱敏系统
  9. 深度学习训练模型的硬件条件(点评)
  10. 基于微信旅游景区购票小程序毕业设计毕设作品(5)开题报告答辩PPT