android应用开发介绍

上传人:第*** 文档编号:61714301 上传时间:2018-12-10 格式:PPT 页数:48 大小:1.73MB
返回 下载 相关 举报
android应用开发介绍_第1页
第1页 / 共48页
android应用开发介绍_第2页
第2页 / 共48页
android应用开发介绍_第3页
第3页 / 共48页
android应用开发介绍_第4页
第4页 / 共48页
android应用开发介绍_第5页
第5页 / 共48页
点击查看更多>>
资源描述

《android应用开发介绍》由会员分享,可在线阅读,更多相关《android应用开发介绍(48页珍藏版)》请在金锄头文库上搜索。

1、Android应用开发,2010年8月13日,Android平台架构,Android环境配置和开发,Android应用程序构成,如何开发一个例子,目录,Android平台架构,JNI,JAVA,C/汇编,简介,Linux核心:Android依赖Linux 2.6来提供核心的服务,例如存储管理、进程(Process)管理等 Android Runtime:Java语言层级的Virtual Machine Libraries:Android里已经提供的C/C+组件。例如,SQLite、OpenGL 3D等。 应用框架(Application Framework,):这是结合Applications

2、和Libraries的主架构,让Libraries組件能不断地为Applications所重复使用 应用程序(Applications):根据用户的期望而将AF的组件及Libraries组件组合而成的服务。,用汉堡比喻Android 平台架构,Android环境配置和开发,Android平台架构,Android应用程序构成,如何开发一个例子,目录,如何安装 Android SDK 和Eclipse 插件,所需开发环境: JDK 5 或 JDK 6 (仅有JRE不够) Eclipse 3.5 (galileo) 下载ADT 的Eclipse 插件 http:/ 安装 Eclipse 插件 (AD

3、T) 启动 Eclipse,选择 Help Install New Software,在出现的对话框里,点击Add按钮,在对话框的name一栏输入“ADT”, 然后点击Archive.,浏览和选择已经下载的ADT插件压缩文件。 点击 OK.。返回可用软件的视图,你会看到这个插件,然后选择Developer Tools (会选中下面的“Android Developer Tools”和 “Android Editors“),点击 Next,最后重启 Eclipse。 下载Android SDK: http:/ 下载完SDK后,把.zip文件解压到你电脑上合适位置。启动 Eclipse,选择win

4、dow-preferences,在打开的视图左边点击android,在右边的SDK Location中选择Android SDK所在位置。,开发第一个Android应用,打开Eclipse,新建项目(点击FileNewProject),在项目列表中展开Android目录,选择Android Project,如下图:,开发第一个Android应用,开发第一个Android应用,点击”finish”即可完成项目的创建,创建后的项目已经是一个可运行的Android应用,我们可以通过下面方式运行此应用: 点击工具栏上手机形状的虚拟设备管理器(简称“AVD“),如下:,开发第一个Android应用,在打

5、开的虚拟设备管理器中创建一个虚拟手机:,开发第一个Android应用,在项目上右键点击run as Android application,如下图:,Android应用程序架构,src/ java原代码存放目录 gen/ 自动生成目录 gen 目录中存放所有由Android开发工具自动生成的文件。目录中最重要的就是R.java文件。 这个文件由Android开发工具自动产生的。Android开发工具会自动根据你放入res目录的xml界面文件、图标与常量,同步更新修改R.java文件。正因为R.java文件是由开发工具自动生成的,所以我们应避免手工修改R.java。R.java在应用中起到了字典

6、的作用,它包含了界面、图标、常量等各种资源的id,通过R.java,应用可以很方便地找到对应资源。另外编绎器也会检查R.java列表中的资源是否被使用到,没有被使用到的资源不会编绎进软件中,这样可以减少应用在手机占用的空间。 res/ 资源(Resource)目录 在这个目录中我们可以存放应用使用到的各种资源,如xml界面文件,图片或数据。具体请看ppt下方备注栏。 AndroidManifest.xml 功能清单文件 这个文件列出了应用程序所提供的功能,在这个文件中,你可以指定应用程序使用到的服务(如电话服务、互联网服务、短信服务、GPS服务等等)。另外当你新添加一个Activity的时候,

7、也需要在这个文件中进行相应配置,只有配置好后,才能调用此Activity。 default.properties 项目环境信息,一般是不需要修改此文件,目录,Android环境配置和开发,Android平台架构,Android应用程序构成,如何开发一个例子,Android应用程序构成,Activity,Service,Broadcast Receiver,Content Provider,Intent,Activity,A visual user interface 通过view管理UI 每一个有用户界面的应用至少包含一个activity 一个应用可以有多个activity,其中一个作为mai

8、n activity用于启动显示 Activity通过startActivity或startActivityForResult启动另外的activity,Activity生命周期,Activity通过onCreate被创建 当一个activity失去焦点,该activity将进入pause状态,系统在内存不足时会将其终止 当一个activity被另一个activity覆盖,该activity将进入stop状态,系统在需要内存的时候会将其终止,Intent,类似于消息、事件通知 Intent构成:action、category、data Activity、Service、broadcast re

9、ceiver之间的桥梁,Intent,activity,service,Broadcast receiver,Intent,两类intent: 显式:指定具体的目标组件处理 startActivity(new Intent(ActivityLifecycle.this, AnotherActivity.class); 隐式:由系统接受并决定如何处理 startActivity(new Intent(Intent.ACTION_DIAL); 在AndroidManifest.xml中定义activity、service、broadcast receiver接受的intent,Intent,Int

10、ent filter: action、category、data,framework,Component name Action Data Category,intent,component,activity,service,Broadcast receiver,实例,action - DIAL data - tel:01038639592,action - VIEW data - http:/,Service,没有UI,启动之后一直运行于后台 例子:音乐播放器 与应用程序的其他模块(例如activity)一同运行于主线程中 通过startService或bindService创建Servic

11、e 通过stopService或stopSelf终止Service 一般的,在activity中启动和终止service,Service生命周期,Context.stopService() Serivce.stopSelf(),Context.startService(),Context.bindService(),服务-Service,Android中的服务和windows中的服务是类似的东西,服务一般没有用户操作界面,它运行于系统中不容易被用户发觉,可以使用它开发如监控之类的程序。服务的开发比较简单,如下: 第一步:继承Service类 public class SMSService ex

12、tends Service ,服务-Service,第二步:在AndroidManifest.xml文件中的节点里对服务进行配置: 服务不能自己运行,需要通过调用Context.startService()或Context.bindService()方法启动服务。这两个方法都可以启动Service,但是它们的使用场合有所不同。使用startService()方法启用服务,调用者与服务之间没有关连,即使调用者退出了,服务仍然运行。使用bindService()方法启用服务,调用者与服务绑定在了一起,调用者一旦退出,服务也就终止。 如果打算采用Context.startService()方法启动服

13、务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onStart()方法。如果调用startService()方法前服务已经被创建,多次调用startService()方法并不会导致多次创建服务,。采用startService()方法启动的服务,只能调用Context.stopService()方法结束服务,服务结束时会调用onDestroy()方法。,服务-Service,如果打算采用Context.bindService()方法启动服务,在服务未被创建时,系统会先调用服务的onCreate()方法,接着调用onBind()方法。这个时候调用者和服务绑定在一起,调用者

14、退出了,系统就会先调用服务的onUnbind()方法,接着调用onDestroy()方法。如果调用bindService()方法前服务已经被绑定,多次调用bindService()方法并不会导致多次创建服务及绑定(也就是说onCreate()和onBind()方法并不会被多次调用)。如果调用者希望与正在绑定的服务解除绑定,可以调用unbindService()方法,调用该方法也会导致系统调用服务的onUnbind()onDestroy()方法。,服务-Service,服务常用生命周期回调方法如下: onCreate() 该方法在服务被创建时调用,该方法只会被调用一次,无论调用多少次startS

15、ervice()或bindService()方法,服务也只被创建一次。 onDestroy()该方法在服务被终止时调用。 与采用Context.startService()方法启动服务有关的生命周期方法 onStart() 只有采用Context.startService()方法启动服务时才会回调该方法。该方法在服务开始运行时被调用。多次调用startService()方法尽管不会多次创建服务,但onStart() 方法会被多次调用。 与采用Context.bindService()方法启动服务有关的生命周期方法 onBind()只有采用Context.bindService()方法启动服务时

16、才会回调该方法。该方法在调用者与服务绑定时被调用,当调用者与服务已经绑定,多次调用Context.bindService()方法并不会导致该方法被多次调用。 onUnbind()只有采用Context.bindService()方法启动服务时才会回调该方法。该方法在调用者与服务解除绑定时被调用。,采用startService()启动服务,采用Context.startService()方法启动服务的代码如下: public class HelloActivity extends Activity Override public void onCreate(Bundle savedInstanceState) Button button =(Button) this.findViewById(R.id.button); butto

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 解决方案

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号