



下载本文档
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
本文格式为Word版,下载可任意编辑——基于安卓的闲聊App的设计与实现毕业
onStart()->onResum();在Activity被Kill的时候调用的方法为onPause()->onStop()->onDesto-ry();这是一个完整的生命周期。
onCreate():在此方法中创立界面,做一些初始化操作。onStart():变成“用户可见不可交互〞状态。onResume():变成“和用户可交互〞状态。onPause():变成“用户可见不可交互〞状态。onStop():不可见,被下一个Activity所覆盖。
onDestory():Activity被Kill前调用的最终一个方法。(2)Activity之间的通信
在Android中一个进程中可能会运行多个不同的Activity实例,也可能在不同的进程中运行不同的Activity实例,所以,我们需要一些特别的机制来实现多个Activity之间传递消息,为此引入了Intent机制。
Intent负责对操作的动作、动作涉及数据、附加数据进行描述,Android则根据此Int-ent的描述,负责找到对应的组件,将Intent传递给调用的组件,并完成组件的调用。因此,Intent在这里起着一个媒体中介的作用,专门提供组件相互调用的相关信息,实现调用者与被调用者之间的解耦。
在应用中,我们可以以两种形式来使用它:
直接Intent:指定了component属性的Intent(调用setComponent(ComponentName)或者setClass(Context,Class)来指定)。通过指定具体的组件类,通知应用启动对应的组件。
间接Intent:没有指定comonent属性的Intent。这些Intent需要包含足够的信息,这样系统才能根据这些信息,在在所有的可用组件中,确定满足此Intent的组件。
2.3.2Service
android中Service是运行在后台的东西,级别与activity差不多。既然说service是运行在后台的服务,那么它就是不可见的,没有界面的东西。你可以启动一个服务Ser-vice来播放音乐,或者记录你地理信息位置的改变,或者启动一个服务来运行并一直监听某种动作。
Service和其他组件一样,都是运行在主线程中,因此不能用它来做耗时的请求或者动作。你可以在服务中开一个线程,在线程中做耗时动作。
服务一般分为两种:
本地服务:LocalService用于应用程序内部。在Service可以调用Context.startSer-vice()启动,调用Context.stopService()终止。在内部可以调用Service.stopSelf()或Servi-ce.stopSelfResult()来自己中止。无论调用了多少次startService(),都只需调用一次stop-Service()来中止。
远程服务:RemoteService用于android系统内部的应用程序之间。可以定义接口并把接口暴露出来,以便其他应用进行操作。客户端建立到服务对象的连接,并通过那个连接来调用服务。调用Context.bindService()方法建立连接,并启动,以调用Context.
-8-
安徽工程大学毕业设计(论文)
unbindService()关闭连接。多个客户端可以绑定至同一个服务。假使服务此时还没有加载,bindService()会先加载它。2.3.3ContentProvider
当应用继承ContentProvider类,并重写该类用于提供数据和存储数据的方法,就可以向其他应用共享其数据。虽然使用其他方法也可以对外共享数据,但数据访问方式会因数据存储的方式而不同,如:采用文件方式对外共享数据,需要进行文件操作读写数据;采用sharedpreferences共享数据,需要使用sharedpreferencesAPI读写数据。而使用C-ontentProvider共享数据的好处是统一了数据访问方式。2.3.4BroadcastReceiver
广播接收器是一个专注于接收广播通知信息,并做出对应处理的组件。好多广播是源自于系统代码的──譬如,通知时区改变、电池电量低、拍摄了一张照片或者用户改变了语言选项。应用程序也可以进行广播──譬如说,通知其它应用程序一些数据下载完成并处于可用状态。一般流程可分为一下三步:
注册广播事件:注册方式有两种,一种是静态注册,就是在AndroidManifest.xml文件中定义,注册的广播接收器必需要继承BroadcastReceiver;另一种是动态注册,是在程序中使用Context.registerReceiver注册,注册的广播接收器相当于一个匿名类。两种方式都需要IntentFIlter。
发送广播事件:通过Context.sendBroadcast来发送,由Intent来传递注册时用到的Ac-tion。
接收广播事件:当发送的广播被接收器监听到后,会调用它的onReceive()方法,并将包含消息的Intent对象传给它。onReceive中代码的执行时间不要超过5s,否则A
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 安全生产法题库及答案
- 安全检查员考试题及答案
- 5G时代基层医疗机构信息化建设模式创新与实践案例001
- 2025年新能源物流车推广应用与运营成本效益对比研究报告
- 中国十大名酒课件
- 原地拍球课件特点
- 助产新技术课件
- 秩序维护部礼节礼貌培训
- 中国农业的农业课件
- 江西省上饶市广丰区丰溪中学2025届八年级英语第二学期期中达标检测试题含答案
- 2025至2030中国数据中心液冷行业发展趋势分析与未来投资战略咨询研究报告
- Unit 2 Home Sweet Home 第5课时(Section B 2a-3c) 2025-2026学年人教版英语八年级下册
- 2025年河北省中考数学试卷真题
- 2025年山东省潍坊市寿光市英语七下期末学业水平测试试题含答案
- 高水平研究型大学建设中教育、科技与人才的协同发展研究
- 山西省2025年普通高中学业水平合格性考试适应性测试化学试卷(含答案)
- 江西省九江市外国语学校2025届英语八下期末学业质量监测试题含答案
- 2025摄影服务合同模板
- 2025年全国统一高考语文试卷(全国一卷)含答案
- 2025年福建省高中自主招生模拟数学试卷试题(含答案)
- 2025年中考一模卷(贵州)英语试题含答案解析
评论
0/150
提交评论