Service与Broadcast简介.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
Service与Broadcast简介

使用startService()和stopService()启动和停止Service的主要方法 private void startService() { Intent i = new Intent(主Activity类文件名.this, Service类文件名.class); this.startService(i);//启动 } private void stopService() { Intent i = new Intent(主Activity类文件名.this, Service类文件名.class); this.stopService(i); //停止 } 启动Service一般需要在AndroidMenifest.xml文件中注册这个Service,此时需要在AndroidManifest.xml中增加对Service的说明。 此时的说明方式不是增加activity android:name=.目的Activity名称/activity,而是需要增加Service名称,如: Service Android:enable=“true” Android:name = “.创建的Service名字” 示例工程ServiceDemo 演示了创建简单的Service及调用Service的方法。需要注意如下几点: Service继承自Android.app.Service。需要import android.app.Service 在代码中一般需要有重写的onBind方法 需要重写了其onStart()、onDestroy()等方法 需要编制启动相应Service的Activity类 ,通过start方式、bind方式、通过intent调用等方式来启动Service 在AndroidManifest.xml中添加对刚才创建的Service的引用 广播与接收消息 在需要发送信息的地方,把要发送的信息和用于过滤的信息(如Action、Category)装入一个Intent对象,并调用context.sendBroadcast()、context.sendOrderedBroadcast()或context.sendStickyBroadcast()方法将Intent对象广播出去。 当Intent将Broadcast发送以后,所有已经注册的BroadcastReceiver会检查注册时的Intent filter是否与发送的Intent相匹配,若匹配则就会调用BroadcastReceiver的onReceive()方法进行接收。 主要步骤 创建一个Intent,将要广播的消息封装在Intent中。在构造Intent时用一个全局唯一的字符串标识其要执行的动作,通常使用应用程序包的名称。 通过context.sendBroadcast()等方法将Intent对象广播出去。 如果要在Intent传递额外数据,可以用Intent的putExtra()方法。 通过Intent filter对象来过滤所发送的实体Intent。 开发BroadcastReceiver类的子类,重写其onReceive()方法。 为应用程序添加适当的权限,并注册Broadcast。和Intent和Service不同的是,注册BroadcastReceiver对象的方式有两种: 方法一:在AndroidMenifest.xml中声明,此时将注册的信息包裹在receiver /receiver标签中,并通过intent-filter标签来设置过滤条件,此种方法被成为静态注册。 方法二:在Java代码中设置,此时一般需要先创建Intent filter对象,并对Intent filter对象设置Intent过滤条件,并通过调用context.registerReceiver()方法来注册监听,最后通过context.unregisterReceiver()来取消监听,此种方式被称为动态注册,它的特点是当context对象被销毁时,该BroadcastReceiver也随之被销毁。 等待接收广播并进行相应的处理。 8.3.1系统广播概述 Broadcast,有系统广播和自定义广播之分。系统广播是系统自带的广播事件,不需要用户自己定义就可以直接接收使用,广播的发送已经为用户实现,当满足一定条件(电池电量低、系统启动完成等)时系统会自动发送广播,用户只需要实现广播接收器的注册和接收即可。 8.3.2 注册BroadcastReceiver public class MyBroadcastReceiver extends BroadcastReceiver

文档评论(0)

shuwkb + 关注
实名认证
内容提供者

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

1亿VIP精品文档

相关文档