基于Android移动平台的软件开发授课课件05_组件通信和 与广播消息--intent.pptVIP

基于Android移动平台的软件开发授课课件05_组件通信和 与广播消息--intent.ppt

  1. 1、本文档共38页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于Android移动平台的软件开发授课课件05_组件通信和 与广播消息--intent.ppt

组件通信与广播消息 --intent;任务目标;Intent 意图;1 Intent简介 ;使用Intent显式启动Activity 创建一个Intent 指定当前的应用程序上下文以及要启动的Activity 把创建好的这个Intent作为参数传递给startActivity()方法;修改AndroidManifest.xml文件;请注意红色、蓝色字体的两段文字;传递参数值的Intnet ;第一个Activity序代码: String Yhm=etYhm.getText().toString(); String Mm=etMm.getText().toString(); Intent i=new Intent(firstActivity.this,SecondActivity.class); i.putExtra(USERNAME, Yhm); i.putExtra(PASSWORD, Mm); startActivity(i);;第二个Activity代码: super.onCreate(savedInstanceState); setContentView(R.layout.second); Intent k=this.getIntent(); String a=k.getStringExtra(USERNAME); String b=k.getStringExtra(PASSWORD); Toast.makeText(this,用户名:+a+;密码: +b,Toast.LENGTH_LONG).show();;隐式启动;隐式启动 Intent的语法如下: ;隐式启动;2 Intent过滤器;2 Intent过滤器;2 Intent过滤器;2 Intent过滤器;2 Intent过滤器;Intent解析 (1) Android系统把所有应用程序包中的Intent过滤器集合在一起,形成一个完整的Intent过滤器列表。 (2) 在Intent与Intent过滤器进行匹配时,Android系统会将列表中所有Intent过滤器的“动作”和“类别”与Intent进行匹配,任何不匹配的Intent过滤器都将被过滤掉。没有指定“动作”的Intent过滤器可以匹配任何的Intent,但是没有指定“类别”的Intent过滤器只能匹配没有“类别”的Intent。 (3) 把Intent数据Uri的每个子部与Intent过滤器的data标签中的属性进行匹配,如果data标签指定了协议、主机名、路径名或MIME类型,那么这些属性都要与Intent的Uri数据部分进行匹配,任何不匹配的Intent过滤器均被过滤掉。 (4) 如果Intent过滤器的匹配结果多于一个,则可以根据在intent-filter标签中定义的优先级标签来对Intent过滤器进行排序,优先级最高的Intent过滤器将被选择。 IntentResolutionDemo示例说明了如何在AndroidManifest.xml文件中注册Intent过滤器,以及如何设置intent-filter节点属性来捕获指定的Intent。 ;Intent解析;;前面讲的Intent,都是一对一的,相当于悄悄话;举例1:;3 广播消息;创建一个Intent 注意:在构造Intent时必须用一个全局唯一的字符串标识其要执行的动作,通常使用应用程序包的名称 调用sendBroadcast()函数,就可把Intent携带的消息广播出去 如果要在Intent传递额外数据,可以用Intent的putExtra()方法;3 广播消息;BroadcastReceiver用于监听广播消息 可以在AndroidManifest.xml文件或在代码中注册一个BroadcastReceiver,并在其中使用Intent 过滤器指定要处理的广播消息 创建BroadcastReceiver需继承BroadcastReceiver类,并重载onReceive()方法。;BroadcastReceiver的应用程序不需要一直运行,当Android系统接收到与之匹配的广播消息时,会自动启动此BroadcastReceiver 基于以上的特征,BroadcastReceiver适合做一些资源管理的工作 在BroadcastReceiver接收到与之匹配的广播消息后,onReceive()方法会被调用 onReceive()方法必须要在5秒钟执行完毕,否则Android系统会认为该组件失去响应,并提示用户强行关闭该组件 ;Intent可以发送广播消息,应用程序和Android系统都可以使用Intent发送广播消息,广播消息的内容可以与应用程序密切相关的数据信息,也可以Android的系统信息,例如网络连接变化、电池电量变化、接收到短

文档评论(0)

youngyu0329 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档