Android编程指南.doc
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_1.gif)
![资源得分’ title=](/images/score_05.gif)
《Android编程指南.doc》由会员分享,可在线阅读,更多相关《Android编程指南.doc(25页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、Android编程指南Android软件产品开发组目录2一、编程环境搭建31、配置android的开发环境32、配置运行环境43、开发工具介绍51、AndroidManifest.xml 文件62、Activity73、View104、Intent115、Service136、NotificationManager147、Android IDL15三、界面设计171、布局管理器172、数据绑定183、XML设计界面201、参数222、文件233、数据库244、内容提供器245、网络25一、编程环境搭建1、配置android的开发环境先从网上下载SDK,网址为下载完成之后,解压缩文件到一个合适的
2、路径。一般解压文件夹的命名规则是android_sdk_。在此文件夹下有文件夹tools,samples等其他的文件夹。这个SDK包含了所有的开发工具,不过基本都是字符界面的。Eclipse集成开发环境提供了很好的图形化开发界面,对SDK有很好的支持。现在一般用Eclipse开发Android的应用程序。要用Eclipse开发Android的应用程序,必需要下载Android的Eclispe插件(ADT http:/dl- )才可以把Android的SDK集成到Eclipse的开发环境中。下载Eclipse3.2或者Eclipse3.3,解压之后,如果系统装了JDK1.5或者1.5以上版本的就
3、可以直接打开。接下来就是配置了,步骤如下:1. 解压缩ADT文件到你的本地目录;2. 启动Eclipse,选择菜单 HelpSoftware Updates Find and Install ;3. 在弹出的对话框中选者Search for new features to install and press Next;4. 在Eclipse的对话框中选者 New local Site ;5. 在弹出的对话框中,选者你的ADT目录。6. 在此步骤是,你应该可以看见你的new site已经在search list(处于被选中状态)。选择Finish;7. 现在已经配置好了ADT了,此时你选择Ecl
4、ipse菜单WindowReferences ,弹出对话框如上图配置就可以后,选者Apply Ok.2、配置运行环境ADT插件提供了新工程的创建的Wizard,你可以使用它来创建新的工程或者导入一个现存的工程。创建一个工程的步骤如下:1. 选择 FileNewProject2. 选择AndroidAndroid Project, and pressNext3. 在对话框the contents for the project:选择创建新的工程:输入工程名称,Java的类组织包,Activity的名词还有你的程序的显示名称。选择导入现有的工程:选择现有工程的工作目录。现在已经创建了一个工程,下面
5、步骤是如何进行运行它。1. 选择RunOpen Run Dialog.或者RunOpen Debug Dialog.;2. 在左边的列表中, 右击Android Application然后选择New.3. 输入一个名称作为当前的配置。4. On the Android tab, browse for the project and Activity to start.5. On the Emulator tab, set the desired screen and network properties, as well as any otheremulator startup options
6、.You can set additional options on the Common tab as desired.最后点击Apply保存当前配置, or pressRunorDebug(as appropriate).3、开发工具介绍用于Eclipse集成开发环境的Android应用开发工具插件:它为Eclipse集成开发环境增加了强大的功能,使得创建和调试Android应用程序更加简单和快速。如果你使用Eclipse来开发Android应用,ADT插件将给你带来极大的帮助: 可以从Eclipse集成开发环境直接访问Android开发工具。例如,ADT允许你直接从Eclipse访问DD
7、MS工具的很多功能,包括截屏、port-forwarding、设置断点、查看线程和进程信息。 它提供一个新的项目向导,用于快速创建一个新的Android应用需要的所有基本文件。 它使构建Android应用的过程自动化和简单化。 它提供一个Android代码编辑器,用于为Android的manifest和资源文件编写有效的XML。 二、Android程序模块1、AndroidManifest.xml 文件AndroidManifest.xml是每一个应用都需要的文件。位于工程文件根目录下,描述了程序包的一个全局变量,包括的应用组件(activities, services等等)和为每个组件的实现
8、类, 什么样的数据可以操作, 以及在什么地方运行。这个文件的一个重要数据(概念)是intent过滤器。这个过滤器描述了何时何种情况下让activity 启动。当一个activity想要执行一个动作, 例如打开一个联系人选取屏幕, 会创建一个Intent对象. 该对象包含了很多的描述信息, 描述了你想做什么操作, 你想处理什么数据, 数据的类型, 以及一些其他的重要信息. Android拿这个Intent的信息与所有应用的intent过滤器比较, 找到一个最能恰当处理请求者要求的数据和action的activity。 另外还要声明您的应用Activities,Content Providers,
9、Services,和 Intent Receivers,你也可以在AndroidManifest.xml文件中指定权限和instrumentation(安全控制和测试)。一个AndroidManifest.xml文件的例子: 这里记录了一些通用特性: 几乎所有的AndroidManifest.xml 文件(同其他的Android文件一样)都会包含一个命名空间的声明xmlns:android= 该声明使标准Android属性在该文件中得以使用, 该属性为文件的xml元素提供了大部分数据. 大多数AndroidManifest.xml 文件仅包含一个元素, 该元素定了这个程序包内所有应用层面上可用
10、的组件和属性. 下面列出了AndroidManifest.xml 这个文件详细的结构大纲, 描述了所有可用标签。 文件根节点, 描述了程序包的所有内容。在其节点下面内可以放置: 请求一个安全授权, 必须被授予该权限, 您的程序包才能正确的操作. 查看安全模块文档, 了解有关授权的更多信息. 一个manifest可以包含零个或多个这样的节点。 声明一个安全授权, 用来限制哪些应用可以访问您的程序包内的组件和特有机制. 查看安全模块文档, 了解有关授权的更多信息. 一个manifest可以包含零个或多个这样的节点。 描述程序包内应用级别组件的根节点. 该节点能够描述应用程序的全局(和/或)默认属性
11、, 例如标签, 图标, 主题, 需要的授权, 等等. 一个manifest可以包含零个或一个这样的节点(多个application 节点是不允许的). 在该节点下, 可以包含零个或多个以下每个组件的声明: Activity 是应用于用户交互的最主要机制. 当一个应用运行的时候, 用户看到的第一个屏幕就是activity, 并且, 用户所使用的其他绝大多数屏幕(界面)也会是activity。 Service 是一个在后台任意时刻都可以运行的组件. 同activity 标签一样, 你可以选择包含一个或多个元素; ContentProvider组件是用来管理数据持久化及数据发布的, 发布的数据可以被
12、其他的应用访问. 2、ActivityActivity是一个与用户交互的系统模块,几乎所有的Activity都是和用户进行交互的,所以在每个Activity进行初始化的时候,都要执行setContentView (View)函数来指定界面UI。在Activity中有两个重要的函数:onCreate(Bundle)函数是你进行初始化的地方,这个也是执行setContentView(View)函数的地方,setContentView(View)函数可以传入一个由XML编制的UI界面,可以使UI和具体实现完全分离。onPause()函数是处理用户离开当前Activity的地方。更重要的是,任何在当前
13、Activity中的任何改变都要在这个函数中提交。一般是使用ContentProvider来保存数据。当从一个界面跳到另一个界面的时候,实质上是从一个Activity跳转到另一个Activity的时候。使用函数Context.startActivity()来实现。另外,所有的Activity都要在AndroidManifest.xml中注册。Activity的生命周期是用Activity stack来管理的。当一个新的Activity启动,就把这个Activity放在Stack 的顶部,然后这个Activity就变成了一个运行的Activity。以前运行的Activity现在被压在Stack的
14、地步,处于Pause状态。只有Stack顶部的Activity才可以在前台运行,且处于活动状态。Activity有四种状态:活动状态,当Activity处于Stack顶时,就是手机当前的现实屏幕,这是Activity就处于activity或者运行状态。运行但是失去焦点,当Activity还处于运行状态时,但是屏幕是有另外一个Activity处于文档处于焦点状态,当前的Activity就处于pause。停止,当Activity被另一个Activity完全覆盖的时候,就被停止了,其实就是虽然在运行,但是用户却看不见。结束,当Activity处于pause或者stop时,系统可以结束Activity
15、,回收资源,这是Activity就是处于结束状态了。处于结束状态的是Activity,如果要使用户可见,只要重启才可以。下面的图表示了Activity的生命周期。Activity 的生命周期是被以下的函数控制的。public class Activity extends ApplicationContext protected void onCreate(Bundle icicle); protected void onStart(); protected void onRestart(); protected void onResume(); protected void onFreeze(
16、Bundle outIcicle); protected void onPause(); protected void onStop(); protected void onDestroy();一般的程序都有几个界面,所以一个程序都有几个Activity。在Activity进行转换的时候需要借助函数startSubActivity(Intent I, int type);第一个参数为指定的需要跳转的Activity。在这个参数中含包含了原始的Activity需要向跳转的目标Activity需要传递的数据。此数据是使用函数putExtra()放入Intent;Intent i = new Int
17、ent(this, NoteEdit.class); i.putExtra(NotesDbAdapter.KEY_ROWID, id); startSubActivity(i, ACTIVITY_EDIT);3、View一个界面就是一个Activity,但是界面上会有很多的控件之类的,只要是用户可以看到的,这些东西都是view。一个View占有一个长方形的地方,而且View是可以嵌套的。View还可以负责响应用户的动作。所有的View的结构都是被安排在树形结构中。你既可以在代码中改变View的结构树,也可以在XML文件中去作修改。View也是所有的布局管理器的基类。在创建一个View的结构树的
18、时候,一个会有几个你会很感兴趣的操作。设置属性,比方说一个TextView,应该会有一些属性值和一些函数去设置比如像字体,颜色等的属性。设置焦点,使用requestFocus()可以设置焦点。接下来是最重要的,就是注册监听事件的函数,一个的View都是相应的函数来设置监听事件。还有一个是设置可见性的函数。下面的这一段代码是在xml中配值一个Button,然后再Activity中获得这个Button的实例,然后可以设置这个Button的监听函数。Xml中的代码如下:Activity中的代码如下:Button myButton = (Button) findViewById(R.id.my_but
19、ton);然后是设置监听函数:myButton,setOnClickListener(new View.OnClickListener() public void onClick(View view) /To-Do);Android框架是负责组织,显示,绘制Views的。一般不直接在View上调用函数,除非是自己实现一个ViewGroup.4、IntentIntent是对被执行操作的抽象描述。调用 startActivity(Intent),可以启动 Activity;调用broadcastIntent(Intent),可以把Intent发送给任何相关的IntentReceiver组件;调用s
20、tartService(Intent, Bundle) 以及bindService(Intent, String, ServiceConnection, int) 可以让应用和后台服务进行通信。 Intent 提供了一个在不同应用的代码之间进行动态绑定 (late runtime binding) 的机制。它主要被用来启动Activities,因此可以被看作是Activities之间的粘合剂。Intent 大体上是一个被动数据结构,该数据结构包括被执行动作的抽象描述。Intent 中的主要内容有: action - 需要被执行的动作。比如 VIEW_ACTION, EDIT_ACTION, M
21、AIN_ACTION 等。 data - 执行动作要操作的数据,在 Intent 里用指向数据记录的URI (ContentURI) 表示。比如联系人数据库中的一个联系人记录。 除了 action, data 两个主要属性,Intent 还具有一些其它属性,这些属性也可以被用在Intent 里: category - 类别,被执行动作的附加信息。例如 LAUNCHER_CATEGORY 表示Intent 的接受者应该在 Launcher 中作为顶级应用出现;而 ALTERNATIVE_CATEGORY 表示当前的 Intent 是一系列的可选动作中的一个,这些动作可以在同一块数据上执行。 ty
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Android 编程 指南
![提示](https://www.taowenge.com/images/bang_tan.gif)
限制150内