Android BOOKWord文档格式.docx

上传人:b****5 文档编号:17013480 上传时间:2022-11-27 格式:DOCX 页数:11 大小:344.28KB
下载 相关 举报
Android BOOKWord文档格式.docx_第1页
第1页 / 共11页
Android BOOKWord文档格式.docx_第2页
第2页 / 共11页
Android BOOKWord文档格式.docx_第3页
第3页 / 共11页
Android BOOKWord文档格式.docx_第4页
第4页 / 共11页
Android BOOKWord文档格式.docx_第5页
第5页 / 共11页
点击查看更多>>
下载资源
资源描述

Android BOOKWord文档格式.docx

《Android BOOKWord文档格式.docx》由会员分享,可在线阅读,更多相关《Android BOOKWord文档格式.docx(11页珍藏版)》请在冰豆网上搜索。

Android BOOKWord文档格式.docx

ContentProvider对象可以与任意ContentProvider通信。

8、上面4种基本组件中,除了ContentProvider是通过ContentResolver激活外,其他三种组件都是由一种名为Intent的异步消息激活的。

9、应用程序的生命周期:

为了解决智能手机内存有限带来的问题,需要提高Android平台中的内存利用效率。

Android引入了这个全新的机制。

应用程序的生命周期不是由进行自己控制的,而是由不得Android系统决定的。

取决于:

该进程对于用户的重要性,以及当前系统中还剩多少可用内存。

10、Android应用程序的组成部分,包括基本组件和各种外部资源。

每个Android应用程序都必须包含一个AndroidMainifest.xml文件,这个文件的作用是告诉Android系统应用程序包含的基本信息,比如应用程序有哪些组件、哪些资源。

AndroidMainifest.xml文件需要声明如下内容:

1、应用程序的java包包名

2、应用程序所含的各种组件:

ActivityServiceBroadcastReceiverContentProvider,同时列出这些组件在java中的类名

3、应用程序为了访问一些受保护的系统API或调用别的应用程序时拥有的权限

4、应用程序被别的应用程序调用时,对其他应用程序要求的权限

5、应用程序兼容的AndroidAPI的最低版本

6、应用程序需要链接的库

Android用户界面

11、View:

View类是可视化控件的基类,主要提供了控制绘制和事件处理的方法。

ViewGroup类也是继承自View类,其最大的特点是可以有子控件。

12、布局:

当已经设置好控件的时候,怎样把它们放在Android设备的屏幕上:

Layout就是负责管理控件在屏幕的位置的类。

AndroidSDK已经内置了几种简单的布局模型,通过这几种布局模型的组合、嵌套并设置子控件的布局参数,就可以构建出各种复杂的用户界面。

电话与短信应用

13、Intent是一种运行时绑定机制,它能在程序运行的过程上连接两个不同的组件。

通过Intent,程序可以向Android表达某种请求或者意愿,Android会根据意愿的内容选择适当的组件来请求。

不同类型的组件有传递Intent的不同方式。

Intent的主要组成部分:

组件名称、Action(动作)、Data(数据)、Category(类别)、Extra(附加信息)、Flag(标志位)

组件名称:

指Intent目标组件的名称,组件名称是一个ComponentName对象,这种对象名称是目标组件所在应用程序的包名的组合。

Action:

描述Intent所触发动作名字的字符串

Data:

描述Intent要操作的数据URI和数据类型

Category:

对被请求组件的额外描述描述信息

Extra:

Extra当我们使用Intent连接不同的组件时,有时需要在Intent中附加额外的信息,以便将数据传递给目标Activity

Flag:

Intent是一种在不同组件之间传递的请求消息,是应用程序发出的请求和意图。

作为一个完整的消息传递机制,Intent不仅需要发送端,还需要接收端。

分类:

显式Intent和隐式Intent

14、在Android的模拟器中对短信或电话提供了非常方便的测试功能。

用户只需要在Windows命令行中输入emulator再启动一个Android模拟器,这样就可以实现两个手机间的电话或短信的测试。

需要说明的是,每个模拟器左上角的数字代表了该模拟器的电话号码。

15、Service的状态回调方法只有三个:

onCreate()、onStart()、onDestroy();

Service不能自己启动的,必须通过Context对象(如一个Activity)调用startService()或bindService()方法来启动。

用两种方法启动的Service生命周期是不同的。

调用startService()方法时,若Service没有启动,则首先会调用该Service的onCreate()方法,然后再调用onStart()方法。

若Service已经启动则会直接调用onStart()方法。

启动后。

Service可以通过Context对象调用stopService()来关闭,也可以通过Service自身调用stopSelf()或stopSelfResult()来关闭,关闭之前调用onDestory()方法

bindService()的功能是,使当前的Context对象通过一个ServiceConnection的对象绑定到所指定的Service,若没有启动Service,则首先调用Service的onCreate()方法,来初始化启动Service,然后调用Service的onBind()方法初始化绑定。

如果绑定Service的Context对象被销毁时,被绑定的Service也会调用onUnbind()和onDestory()方法并停止运行。

这时需要注意是:

BroadcastReceiver是不能绑定服务的。

一个绑定服务了的Context对象还可以通过unbindService()来取消服务的绑定。

取消时,Service会调用unbind()方法,若Service是通过bindService()来启动的,还会调用onDestroy()方法来停止运行。

16、Broadcast是一种广泛运用的在应用程序之间传输信息的机制。

而BroadcastReceiver是对发送出来的Broadcast进行过滤接收并响应的一类组件,下面详细叙述了如何发送Broadcast和使用BroadcastReceiver过滤接收的过程。

首先在需要发送信息的地方,把要发送的信息和用于过滤的信息装入一个Intent对象,然后通过调用Context.sendBroadcast()、sendOrderBroadcast()或sendStickyBroadcast()方法,把Intent对象以广播的形式发送出去。

当Intent发送以后,所有已经注册的BroadcastReceiver会检查注册时的IntentFilter是否与发送的Intent相匹配,若匹配则就会调用BroadcastReceiver的onReceive()方法。

所以当我们定义一个BroadcastReceiver的时候,都需要自己实现onReceive()这个方法。

通常,使用sendBroadcast()或sendStickyBroadcast()发送出去的Intent,所有满足条件的BroadcastReceiver都会随机地地执行其onReceive()方法。

而通过sendOrderedBroadcast()方法发送出去的Intent,会根据BroadcastReceiver注册时IntentFilter设置的优先级的顺序来执行,相同优先级的BroadcastReceiver则是随机执行。

而sendStickyBroadcast()主要的不同是,Intent在发送后一直存在,并且在以后调用registerReceiver()注册相匹配的Intent时会把这个Intent直接返回。

注册BroadcastReceiver有两种方式:

静态地在AndroidManifest.xml中用<

receiver>

标签声明注册,并在标签内用<

intent-filter>

标签设置过滤器。

动态地在代码中先定义并设置好一个IntentFilter对象,然后在需要注册的地方调用Context.registerReceiver()方法。

如果取消注册时就调用Context.unregisterReceiver()方法。

如果用动态方式注册的BroadcastReceiver的Context对象销毁时,BroadcastReceiver也就自动取消注册了。

使用外部数据和服务

17、Android网络应用开发:

1、通过URL获取网络资源

2、用HTTPPOST提交表单

3、用SAX解析XML文件

4、利用GoogleAPI完成天气预报

5、用DOM解析XML文件—构建实时地震信息列表

6、以上例子来自深入浅出GoogleAndroid

使用位置服务和地图API

18、智能手机的一大特钯是它的可移动性,可以随时查询获取任何人当前所处的位置,即得到手机当前所处的地理位置信息。

获取地理信息的方法有GPS定位技术和Google网络地图定位技术。

这些不同的定位技术应用统称为LBS(基于位置的服务)

使用SQLite、ContentProvider与Preferences处理数据

19、Android平台主要通过java.io.FileInputStream和java.io.FileOutputStream这两个来来实现对文件的读写,java.io.File类则用来构造一个具体指向某个文件或者文件夹的对象。

这时要注意:

每个应用程序所在的包都会有一个私有的存储数据的目录(文件夹),只有属于这个包中的应用程序才有写入的权限,每个包中的应用程序的私有数据目录位于Android系统中的绝对路径/data/data/<

包名>

/目录中。

除了私有数据目录,应用程序还拥有/sdcard目录即Android设备上的SD卡的写入权限,文件系统中其他的系统目录,第三方应用程序都是不可写的。

20、Android平台为开发者提供了SQLite数据库相关的API来实现对数据库操作的支持,开发人员可以很方便地使用这些API来对SQLite数据库进行创建、修改及查询等操作。

Android系统的很多用户数据,如联系人信息、通话信息、短信信息等,都是存储在SQLite数据库当中的,所以利用操作SQLite数据库的API可以同样方便地访问甚至修改这些数据。

SQLite是完全独立的,不具有外部依赖性。

是一个轻量级的数据库。

在Android中我们通过SQLiteDatabase这个类的对象操作SQLite数据库。

由于SQLite数据库并不需要C/S数据那样建立连接以及身份验证的特性,以及SQLite数据库单文件数据库的特性,使得获得SQLiteDatabase对象就像获得操作文件的对象那样简单。

除了在文件系统中创建SQLite数据库,Android还支持SQLite内存数据库。

桌面组件

21、快捷方式是桌面上最基本的组件,它用于直接启动某一应用程序的某个组件。

一般情况下,可以在Launcher的应用程序列表上,通过长按某一应用程序的图标在桌面上创建启动该应用程序的快捷方式。

通地两种方式在桌面上添加快捷方式:

1在应用程序中构建一个Intent,然后以Broadcast的形式通知Launcher创建一个快建一个快捷方式。

2为应用程序的组件注册一个符合特定条件的IntentFilter,然后就可以直接在Launcher的桌面上添加启动该组件的快捷方式了。

22、实时文件夹:

是一种用来显示由某个ContentProvider提供的数据信息的桌面组件。

要创建一个实时文件夹,必须要有两方面的支持。

一是:

要定义一个用来创建实时文件夹的Activity。

二是:

所指定数据信息URI的ContentProvider必须支持实时文件夹的查询。

23、桌面部件:

一种利用AppWidget框架将应用程序的某个部件摆放在桌面,以便于用户快速了解信息以及操作应用程序的桌面组件,如未完成的日历、音乐播放器的播放暂停和当前播放音乐的信息等。

虚拟软键盘与输入法

24、Android输入法框架的设计原则是能够支持多种输入法编辑器,输入法编辑器包括软键盘输入法、手写输入法和传统的硬键盘输入法。

OMS(OpenMobileSystem)开放式手机操作系统

Android移动开入门与进阶

1、Android应用程序的界面设计有两种方法:

一种代码设计,另一种是XML文件设计。

XML定义用户界面的好处是:

它可以更好地把应用程序界面的展现部分和行为的控制代码分隔开来。

用户界面的描述对应用程序代码来说是外在的,也就是说我们可以很方便地修改界面而不需要修改和重新编译代码。

声明用户界面元素的XML语句紧跟着结构、类和方法的名字,其中元素名对应着类名,属性名对应着方法。

2、Android上实现用户界面的基本知识,它包括了构建屏幕的基本组件,怎样使用xml定义屏幕并把它加载到代码中、以及需要为用户界面处理的各种任务。

然后通过两个实例来了单个Activity和多个Activity应用程序的UI设计。

对于Android应用开发来说,最大的困难就是那些GUI的实现,以及如何将程序的功能绑定到那些界面上,从界面中接收用户的输入,或者是用合适、合理的方式向界面输出。

对于Android开发来说,用户界面的实现是比较重要的和复杂的一环。

视图组件(Viewgroup)和视图(View)是Android平台上最基本的用户界面表达单元。

3、Activity是Android最基本的应用程序组件。

在应用程序中,一个Activity通常就是一个单独的屏幕,用于呈现数据和用户进行交互,每个屏幕可以有1或多个组件布局。

几乎所有的Activity都要和用户打交道,所Activity类创建了一个窗口,开发人员可以通过setContentView(View)方法把UI放到Activity创建的窗口中。

尽管Activity经常被用来当做全屏窗口使用,理也可以通过其他方式来使用。

4、Activity生命周期、Activity的启动与返回。

Android控制层最重要的机制是Intent。

围绕着Intent,可以协调Activity、Service以及BroadcastReceiver等之间的通信,并可以使用NotificationManager和AlermManager通知UI和用户底层事件的发生。

所有的组件在manifest文件中配置,通过代码为组件添加逻辑处理,降低了组件和逻辑处理的耦合性,体现了反转控制的优势。

5、Android系统的持久层功能:

ActivityUI状态维护、SharedPreferences读写、文件读写、SQLite数据库操作和ContentProvider操作。

SharedPreferences基于值对,适合轻量数据存储,如程序设置、用户设置等,Activity状态维护中引入Bundle与之类似。

文件适合大量数据存储,标准JavaI/O函数和Android特有函数2种途径来操作文件,前者可以在权限适当的情况下操作任何给定路径文件,后者则只能读写应用程序目录下的文件。

SQLite数据库是轻量级的嵌入式数据库,用于存储结构化数据,对于数据访问较多的程序,最好为其实现一个数据库Adapter类来解除控制层与持久层的耦合。

ContentProvider提供了一组标准的接口,使得任何数据源都能够在封装后以标准的形式供其他程序访问。

一方面,ContentProvider将程序逻辑从数据访问的依赖关系中解脱出来,另一方面,ContentProvider提供了应用程序共享自己私有信息的标准方式。

另外,Android系统提供了针对浏览器、通讯录及多媒体等方面的本地ContentProvider,为第三方程序的开发提供了便利,并有助于其性能和兼容性的提高。

SQlite数据库应用

6、F:

\Java\JDK\android-sdk-windows\tools;

CMD进入这个目录中,或者是把这个添加到环境污变量中。

命令行:

sqlite3database.db用于创建数据库。

1、sqlite3这个命令进入SQLite数据库的命令行操作。

2、createtabledatatablename(

字段语句,

);

用于创建数据库的表。

3、.databases用于显示创建数据库的结果

4、.tables用于显示数据库中的表的结果

5、.help用于显示帮助

6、.schemadatatablename用于显示出创建数据表的结构

7、.exit用于离开sqlite的互动模式

Android网络通信

云计算:

指基于互联网的超级计算模式,即把存储于个人电脑、移动电话和其他设备上的大量信息和处理器资源集中在一起,协同工作。

Android平台提供了比较完备的HTTP应用API,能够开发出基于浏览器和桌面的客户端应用。

AndroidHTTP开发工具主要有Webkit组件包android.webkit(浏览Web页面等)、Java网络包()及Google把Apache的HttpClient包移植到Android平台上的包等。

Webkit是Android内置的Web浏览器,已完全支持Ajax。

当前,第一款同时支持Ajax和Flash的移动平台。

7、REST:

RepresentationalStateTransfer“表述性状态转移”REST有5个关键性原则:

1、所有资源都有唯一URI:

所有的数据都在唯一的URI标识

2、将所有的事物链接在一起:

由于URI,在任何可能的情况下,适用链接指向被标识的事物

3、适用标准方法:

同一个资源适用不同的动作可以获得不同的结果,这里的动作除了常用的GET和POST外,还有PUT和DELETE。

每一个动作刚好对应着数据库的基本操作:

GET对应获取数据,就是查询;

POST对应的更新数据UPDATE;

PUT对应着INSERT;

DELETE对应着数据库删除。

4、资源的多重表述:

资源的获取会随着请求的Head不同而不同

5、无状态通信:

REST要求状态要么被放入资源状态中,要么保存在客房端上。

换句话说:

不能从服务器端获得任何保存的上下文信息。

这样做的理由,可以提高系统的可靠性和可伸缩性。

它不需要昂贵的维护和支持费用,因为状态并不服务器上维护。

8、JSON:

JavaScriptObjectNation是一种轻量级的数据交换格式,易于人们阅读和编写,易于机器解析和生成。

JSON建构于两种结构:

1、“名称/值”对的集合。

不同的语言中,它被理解为对象、记录、结构、字典、哈希表、有键列表或关联数组

2、值的有序列表。

大部分语言中,被理解为数组。

创建虚拟卡方法

F:

创建一个名称为test的AVD(Android虚拟设备),打开命令行终端,输入如下命令:

1、andriodcreateavd–ntest–t2一路回车

2、再创建一张虚拟SD卡,假设此卡为64M,名称为sdcard.iso,在命令行输入如下:

mksdcard64Msdcard.iso(sdcard.img也可以)回车.此时一张虚拟SD卡创建完成。

3、启动这个带有SD卡的模拟器,在命令行输入如下:

emulator–avdtest–sdcardsdcard.iso(sdcard也可以)回车,此时一个含有SD卡的模拟器就启动了。

(再打开一个命令行窗口:

cmdF:

cdF:

\Java\JDK\android-sdk-windows\tools)

4、将MP3文件xxx.mp3拷贝到SD卡中,在命令行输入如下:

adbpushxxx.mp3/sdcard回车,SD卡中就有mp3文件了,

OK!

现在就可以正学运行MP3播放器了。

5、复制好文件后,必须运行adbshell指令进入Android系统,然后使用Linux系统的ls与cd指令游览/sdcard存储卡文件:

a、adbshell

b、#cd/sdcard(#表示进入Linux)

c、#ls

6、如果所仿真出来的AndroidSD存储卡里,有些文件想要放回计算机,可以通过adb+pull指令来下载文件:

a、adbpull/sdcard/001.txt(文件)

b、adbpull/sdcard/pictures(目录)

如果不想要SD存储卡里的文件,则可以运行adbshell先进入到仿真器的终端机模式,然后使用Linux系统的rm指令将sdcard目录下的文件删除:

c、adbshell

d、#cd/sdcard(#表示进入Linux)

e、#rm001.txt(文件)

f、#rm–r*(删除SD存储卡里所有文件与目录)

7、移动与删除AVD硬件装置:

androidmoveavd–ntest–rtset(test更名为tset)

androiddeleteavd–test(删除testAVD装置)

GoogleAndroid程序设计指南

1、Android内核架构:

开发方式是采用Eclipse创建Jav源代码,然后经过编译与dx工具转换为DalvikExecutable(.dex)文件

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 小学教育 > 数学

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1