安卓期末复习资料整理全

  • 格式:pdf
  • 大小:1.02 MB
  • 文档页数:8

下载文档原格式

  / 8
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

复习提示:

考试分为选择题,简答题和综合题。

PPT中的内容主要是给⼤大家参考简答题和相关的基本概念。其主要考点如下:

1.Activity的概念和⽣生命周期

Activity是Android的四⼤大组件之⼀一,它是⼀一种可以包含⽤用户界⾯面的组件,主要⽤用于和⽤用户进⾏行行交互,⽐比如打电话,照相,发送邮件,或者显示⼀一个地图!Activity⽤用于显示⽤用户界⾯面,⽤用户通过Activity交互完成相关操作,⼀一个App允许有多个Activity。

2.Intent的概念和隐式Intent的使⽤用机制

显式:

1 //显示⽅方式声明Intent,直接启动SecondActivity

2 Intent it = new

Intent(MainActivity.this,SecondActivity.class);

3 //启动Activity

4 startActivity(it);

隐式:

1 // 实例例化Intent

2 Intent it = new Intent();

3 //设置Intent的Action属性

4

it.setAction("com.android.activity.MY_ACTION");

5 // 启动Activity

6 startActivity(it);

3.隐式Intent与显式Intent的区别

显式Intent直接⽤用组件的名称定义⽬目标组件,这种⽅方式很直接。但是由于开发⼈人员往往并不不清楚别的应⽤用程序的组件名称,因此,显式Intent更更多⽤用于在应⽤用程序内部传递消息。⽐比如在某应⽤用程序内,⼀一个Activity启动⼀一个Service。

隐式Intent恰恰相反,它不不会⽤用组件名称定义需要激活的⽬目标组件,它更更⼴广泛地⽤用于在不不同应⽤用程序之间传递消息。

在显式Intent消息中,决定⽬目标组件的唯⼀一要素就是组件名称,因此,如果你的Intent中已经明确定义了了⽬目标组件的名称,那么你就完全不不⽤用再定义其他Intent 内容。

⽽而对于隐式Intent则不不同,由于没有明确的⽬目标组件名称,所以必须由android 系统帮助应⽤用程序寻找与Intent请求意图最匹配的组件。

4.Service的概念与类别,两种类别Service的区别

Service是⽤用于后台服务的,当应⽤用程序被挂到后台的时候,问了了保证应⽤用某些组件仍然可以⼯工作⽽而引⼊入了了Service这个概念,那么这⾥里里⾯面要强调的是Service不不是独⽴立的进程,也不不是独⽴立的线程,它是依赖于应⽤用程序的主线程的,也就是说,在更更多时候不不建议在Service 中编写耗时的逻辑和操作,否则会引起ANR。

那么我们当我们编写的耗时逻辑,不不得不不被service来管理理的时候,就需要引⼊入IntentService,IntentService是继承Service的,那么它

包含了了Service的全部特性,当然也包含service的⽣生命周期,那么与service不不同的是,IntentService在执⾏行行onCreate操作的时候,内部开了了⼀一个线程,去你执⾏行行你的耗时操作。

5.ContentProvider的概念和基本操作⽅方法

ContentProvider管理android以结构化⽅式存放的数据。他以相对安全的⽅式封装数据并且提供简易的处理机制。Content provider提供不同进程间数据交互的标准化接⼜。

实现ContentProvider的步骤:

1)编写⼀一个类,继承ContentProvider,并且重写⾥里里⾯面的CRUD⽅方法。

2)在androidmanifest.xml⽂文件中注册provider。

在androidmanifest.xml中注册provider需要以下3个属性:

android:name provider的实现类。

android:authorities provider的uri。

android:exported provider是否暴暴露露给其他程序。ContentResovler操作ContentProvider:

1)获取ContentResolver,getContentResovler()⽅方法来⾃自于ContextWrapper,所以activity和service中都可以使⽤用。

2)调⽤用CURD⽅方法,通过参数url,调⽤用指定的ContentProvider的⽅方法。

6.Android的开发环境的搭建过程

安装JDK

下载地址: /technetwork/java/javase/ downloads/jdk7-downloads-1880260.html

注意需要选择适合⾃⼰系统的版本.

Android Studio下载

下载地址:/sdk/index.html

Android Studio安装

下载完成后,就可以开始安装了了,⽤用⿏鼠标双击android-studio-bundle-135.1740770-windows.exe启动安装程序

第⼀一次启动AndroidStudio时,需要设置⼀一下SDK的安装⽬目录,设置Android SDK的安装⽬目录。打开AndroidStudio之后,默认会帮我们创建⼀一个app的项⽬目

7.普通⼴广播与有序⼴广播的区别

1.⽆序⼴播(普通⼴播)

通过Context.sendBroadcast()⽅法来发送,它是完全异步的。

所有的receivers(接收器)的执⾏顺序不确定,因此所有的receivers(接收器)接收broadcast的顺序不确定。

这种⽅式效率更⾼,但是BroadcastReceiver⽆法使⽤setResult系列、getResult系列及abortbroadcast(中⽌)系列API。

⼴播不能被终⽌,数据不能被修改。

2.有序⼴播

有序⼴播,即从优先级别最⾼的⼴播接收器开始接收,接收完了如果没有丢弃,就下传给下⼀个次⾼优先级别的⼴播接收器进⾏处理,依次类推,直到最后。如果多个应⽤程序设置的优先级别相同,则谁先注册的⼴播,谁就可以优先接收到⼴播。通过

Context.sendorderBroadCast()⽅法来发送,sendOrderedBroadcast(intent,

receiverPermission, resultReceiver, scheduler, initialCode, initialData, initialExtras);,其中的参数resultReceiver,可以⾃⼰重写⼀个类,作为⼀个最终的receive 最后都能够接收到⼴播,最终的receiver 不需要再清单⽂件⾥⾯配置,initialData可以作为传输的数据

⼴播可以被终⽌,数据传输过程中可以被修改。

8.简要描述Android项⽬目的基本结构

Project 结构类型

• app/build/ app模块build编译输出的⽬目录

• app/build.gradle app模块的gradle编译⽂文件

• app/app.iml app模块的配置⽂文件

• app/proguard-rules.pro app模块proguard⽂文件• build.gradle 项⽬目的gradle编译⽂文件

• settings.gradle 定义项⽬目包含哪些模块

• gradlew 编译脚本,可以在命令⾏行行执⾏行行打包

• local.properties 配置SDK/NDK

• MyApplication.iml 项⽬目的配置⽂文件