Android开发指南

Android中文开发文档-初学者
目录
应用程序基础Application Fundamentals    4
关键类    4
应用程序组件    5
激活组件:intent    7
关闭组件    7
manifest文件    8
Intent过滤器    9
Activity和任务    10
Affinity(吸引力)和新任务    11
加载模式    12
清理堆栈    13
启动任务    14
进程和线程    14
进程    15
线程    15
远程过程调用    15
线程安全方法    16
组件生命周期    17
Activity生命周期    17
调用父类    18
服务生命周期    21
广播接收器生命周期    22
进程与生命周期    22
用户界面User Interface    24
视图层次View Hierarchy    24
布局Layout    25
部件Widgets    26
用户界面事件UI Events    26
菜单Menus    26
高级话题Advanced Topics    27
适配器Adapter    27
风格与主题Styles and Themes    27
资源和资产Resources and Assets    28
资源引用Resource Reference    43
国际化和本地化Internationalization and Localization    43
意图和意图过滤器Intents and Intent Filters    43
意图过滤器Intent filters    47
通常情况Common cases    51
使用意图匹配Using intent matching    52
数据存储Data Storage    52
概览Storage quickview    52
  系统偏好:快速,轻量级存储    52
  文件:存储到设备内部或可移动闪存    52
  数据库:任意的结构化存储    52
  支持基于网络的存储    52
系统偏好Preferences    53
文件Files    54
数据库Databases    54
网络Network    55
内容提供器Content Providers    55
内容提供器的基础知识Content Provider Basics    56
查询一个内容提供器Querying a Content Provider    57
修改数据Modifying Data    61
创建一个内容提供器Creating a Content Provider    64
Content URI 总结    67
清单文件l File    68
清单文件结构Structure of the Manifest File    69
文件约定File Conventions    71
文件特性File Features    73
应用程序基础Application Fundamentals
关键类
1. Activity
2. Service
3. BroadcastReceiver
4. ContentProvider
5. Intent
Android应用程序使用Java做为开发语言。aapt工具把编译后的Java代码连同其它应用程序需要的数据和资源文件一起打包到一个Android包文件中,这个文件使用.apk做为扩展名,它是分发应用程序并安装到移动设备的媒介,用户只需下载并安装此文件到他们的设备。单一.apk文件中的所有代码被认为是一个应用程序。
从很多方面来看,每个Android应用程序都存在于它自己的世界之中:
默认情况下,每个应用程序均运行于它自己的Linux进程中。当应用程序中的任意代码开始执行时,Android启动一个进程,而当不再需要此进程而其它应用程序又需要系统资源时,
则关闭这个进程。
每个进程都运行于自己的Java虚拟机(VM)中。所以应用程序代码实际上与其它应用程序的代码是隔绝的。
默认情况下,每个应用程序均被赋予一个唯一的Linux用户ID,并加以权限设置,使得应用程序的文件仅对这个用户、这个应用程序可见。当然,也有其它的方法使得这些文件同样能为别的应用程序所访问。
使两个应用程序共有同一个用户ID是可行的,这种情况下他们可以看到彼此的文件。从系统资源维护的角度来看,拥有同一个ID的应用程序也将在运行时使用同一个Linux进程,以及同一个虚拟机。
应用程序组件
Android的核心功能之一就是一个应用程序可以使用其它应用程序的元素(如果那个应用程序允许的话)。比如说,如果你的应用程序需要一个图片卷动列表,而另一个应用程序已经开发了一个合用的而又允许别人使用的话,你可以直接调用那个卷动列表来完成工作,而不
用自己再开发一个。你的应用程序并没有吸纳或链接其它应用程序的代码,它只是在有需求的时候启动了其它应用程序的那个功能部分。
为达到这个目的,系统必须在一个应用程序的一部分被需要时启动这个应用程序,并将那个部分的Java对象实例化。与在其它系统上的应用程序不同,Android应用程序没有为应用准备一个单独的程序入口(比如说,没有main()方法) 而是为系统依照需求实例化提供了基本的组件。共有四种组件类型:
Activity
Activity是为用户操作而展示的可视化用户界面。比如说,一个activity可以展示一个菜单项列表供用户选择,或者显示一些包含说明的照片。一个短消息应用程序可以包括一个用于显示做为发送对象的联系人的列表的activity,一个给选定的联系人写短信的linux和安卓的关系activity以及翻阅以前的短信和改变设置的activity。尽管它们一起组成了一个内聚的用户界面,但其中每个activity都与其它的保持独立。每个都是以Activity类为基类的子类实现。
一个应用程序可以只有一个activity,或者,如刚才提到的短信应用程序那样,包含很多个。
每个activity的作用,以及其数目,自然取决于应用程序及其设计。一般情况下,总有一个应用程序被标记为用户在应用程序启动的时候第一个看到的。从一个activity转向另一个的方式是靠当前的activity启动下一个
每个activity都被给予一个默认的窗口以进行绘制。一般情况下,这个窗口是满屏的,但它也可以是一个小的位于其它窗口之上的浮动窗口。一个activity也可以使用超过一个的窗口──比如,在activity运行过程中弹出的一个供用户反应的小对话框,或是当用户选择了屏幕上特定项目后显示的必要信息。
窗口显示的可视内容是由一系列视图构成的,这些视图均继承自 View 基类。每个视图均控制着窗口中一块特定的矩形空间。父级视图包含并组织它子视图的布局。叶节点视图(位于视图层次最底端)在它们控制的矩形中进行绘制,并对用户对其直接操作做出响应。所以,视图是activity与用户进行交互的界面。比如说,视图可以显示一个小图片,并在用户指点它的时候产生动作。Android有很多既定的视图供用户直接使用,包括按钮、文本域、卷轴、菜单项、复选框等等。

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。