- 1、本文档共9页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
实验四 Andoid基本组件交互实验
实验四 Android基本组件交互实验
【实验目的】
本实验是Android基本组件实验,主要针对Activity、Service和Receiver实现和使用方法。通过实验使学生掌握Activity的跳转、Service的启动停止以及Receiver的接受等。
【实验要求】
使得学生熟悉Activity、Service和BroadCast基本使用;
使得学生掌握短信接收实现和使用;
使得学生掌握界面跳转基本原理和使用方法;
使得学生掌握服务和广播的基本机制。
【实验原理】
Activity跳转
startActivity——跳转到目标页面,参数为Intent;
startActivityForResult ——跳转到下一个Activity,而当这个Activity被关闭以后,自动跳转前一个Activity,并调用onActivityResult( )方法,参数为Intent和requestcode
Intent
Android基本的设计理念是鼓励减少组件间的耦合,因此Android提供了Intent (意图) ,Intent提供了一种通用的消息系统,将要执行的动作的抽象的描述,一般来说是作为参数来使用,由Intent来协助完成Android各个组件之间的通讯 。
Intent属性:
Action ,对执行动作的描述,在Intent类中定义了一些字符串常量作为标准动作;
data ,是对执行动作所要操作的数据的描述,Android中采用URI来表示数据;
例:VIEW_ACTION content://contacts/1表示显示标识符为”1″的联系人的详细信息。
catagory 类别,是被执行动作的附加信息;
extra 附加信息,除了data之外,还可以通过extra附加信息,extra属性使用Bundle类型进行数据传递;
component 组件,显式指定Intent的目标组件的名称;
type 数据类型,显式指定Intent的数据类型;
Service组件
Service一般由一个Activity或其他Context对象来启动,当启动Service之后,该Service将会在后台运行,及时启动这个Service的Activity或其他组件的生命周期已经结束,Service仍然会继续运行,直到自己的生命周期结束为止。每个Service都应该在ndroidManifest.xml中进行声明。Service的启动方式有两种,对应的生命周期也各不相同。
通过startService方法启动。当系统调用startService方法,如果该Service还未启动,则依法调用其onCreate方法和onStart方法来启动。当其他Context对象调用stopService方法、Service调用自身的stopSelf或stopService方法时才会停止Service的执行。
通过bindService方法启动。当系统调用bindService方法时,如果该Service未启动,则会调用onCreate方法完成初始化工作,然后会将该Service和Context对象(如Activity)进行绑定,当被绑定的Context对象被销毁时,与之绑在一起的Service也会停止运行。
Broadcast Receiver组件
Broadcast Receiver同Service一样,并不提供与用户交互的表示层,其实是一种负责接收广播消息并对消息作出反应的组件。在Android的系统中就存在许多这样的广播,比如电池电量过低或信号过低时,系统就会发出广播进行通知。
应用程序如果需要响应某一个广播消息,应该注册对应的BroadcastReceiver对象,该对象继承自BroadcastReceiver类,该类位于android.content包。这样一来当系统或另外的应用程序发出特定广播时,该应用程序就可以接受并做出回应,如启动Activity等。
接受广播的时候就需要通过IntentFilter对象来进行过滤。BroadcastReceiver的生命周期比较简单,其只有一个回调方法--onReceiver,该方法在应用程序接受到发给自己的广播的时候调用,所以BroadcastReceiver的使用方法也相对简单,只需要对onReceive方法进行合理重写,在适当的地方注册该BroadcastReceiver即可。
注册BroadcastReceiver对象的方式有以下两种。
在AndroidMannifest.xml文件中声明。注册信息包裹在receiver/receiver标签中,并在intent-filter标签内设定过滤规则。
在代码中创建并设置IntentFilter对象。该IntentFilter对象包含了对广播的过滤规则,
您可能关注的文档
最近下载
- BRIDON起重机钢丝绳样本-中文版.pdf VIP
- 初中音乐教学中的合唱教学现状研究-音乐论文-艺术论文.docx
- 2024年合规翼展 御浪远航-企业出海数据合规指导书【下(共两册)】.pdf VIP
- 2025年兰州现代职业学院单招语文考试模拟试题及答案解析.docx
- 国家公祭日(勿忘国耻振兴中华)课件.pptx
- 工程项目施工人员安全指导手册.ppt VIP
- 碳元科技:首次公开发行股票招股说明书.docx
- 脑电仿生电刺激仪治疗老年慢性失眠的疗效观察.pdf VIP
- 2024年上海中考物理专题复习精练 专题08 动态电路分析含详解.doc VIP
- 北京航天益来电子科技有限公司拟股权转让涉及的股东全部权益价值评估说明.pdf
文档评论(0)