首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

代码注册广播接收者&利用广播调用服务的方法

利用广播调用服务里面的方法,间接的方式调用服务内部的方法,与现实中差不多,请媒体曝光 主界面里面 在界面创建的时候开启一下服务普通的startService()方法 发送一条广播出去 获取Intent对象...,通过new出来 调用Intent对象的setAction()方法,参数:一般就是包名 调用sendBroadcast(intebt)方法,发送广播,参数:Intent对象 服务里面 新建一个MyService...类继承系统的Service类 添加一个自定义的服务的方法callServiceMethod(),我们目的要调用的方法 新建一个内部类MyReceiver继承系统的Receiver类 广播接收者既能通过清单文件注册...,比如callServiceMethod() 当服务销毁的时候,解除注册的广播接收者,在onDestroy()方法里面,调用unResisterReceiver(receiver),参数:广播接收者对象...Intent intent=new Intent(this,MyService.class); startService(intent); } //广播调用服务

1K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    笔记58 | Android闹钟

    调度重复的闹钟 闹钟(基于AlarmManager类)给予你一种在应用使用期之外执行与时间相关的操作的方法。你可以使用闹钟初始化一个长时间的操作,例如每天开启一次后台服务,下载当日的天气预报。...,使用它来触发事件或行为; 帮助你的应用最小化资源需求,你可以使用闹钟调度你的任务,来替代计时器或者长时间连续运行的后台服务。...当我们从服务端同步数据时,往往会在应用不被使用的时候时被唤醒触发执行某些操作。此时你可能希望使用重复闹钟。...同步操作基于的是时钟时间,具体来说,每一个应用的实例会在下午十一点整进行同步,巨大的服务器负荷会导致服务器响应时间变长,甚至拒绝服务。...“本地任务”指的是任何不需要访问服务器或者从服务器获取数据的任务; 同时对于那些包含有网络请求的闹钟,在调度时机上增加一些随机性。

    1.6K30

    Android设置闹钟

    setWindow(int, long, long, PendingIntent) setExact(int, long, PendingIntent) 从上面的两个方法我们可以看出,没有了repeat,就是设置了闹钟只能响一次了...因此需要解决如下几个主要问题: 1.如何设置一个闹钟每天都准确提醒呢? 2.手机重启之后,设置的闹钟是否还有效? 3.应用程序被杀死之后,闹钟是否还有效? 1.如何设置一个闹钟每天都准确提醒呢?...// 不能用startActivity,会导致生成无数个activity alarm(context, intent); } /** * 如何设置一个闹钟每天都准确提醒呢...public void onReceive(Context arg0, Intent arg1) { arg0.startService(arg1); } } 3.应用程序被杀死之后,闹钟是否还有效...@Override public void onDestroy() { super.onDestroy(); /** * 应用程序被杀死之后,闹钟是否还有效

    1.5K20

    redis广播模式_广播

    介绍 BroadcastReceiver 是 Android 的四大组件之一,它作用于应用内、进程间重要的一种通信方式,能够将某个消息通过广播的形式传递给订阅的广播接收器中,下面我们就来分析一下 广播注册到接收到消息...mReceiverResolver 中,这样,就将广播接收器和要接收广播类型的接收器 filter 保存在 AMS 中了,以后就能接到到相应的广播并做处理了。...onReceive 时序图 在 Activity 通过 sendBroadcast 发送一个广播最后 Binder 发送给 AMS , AMS 根据这个广播的 Action 类型找到相应的广播接收器,...然后把这个广播放进自己的消息队列中,完成第一部分广播异步分发。...本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

    1.5K10

    顺序广播和无序广播

    普通广播(Normal Broadcast): 一,优缺点:和有序广播的优缺点相反!...二,发送广播的方法:sendBroadcast() 有序广播(Ordered Broadcast): 一,优缺点 优点:1,按优先级的不同,优先Receiver可对数据进行处理,并传给下一个Receiver...             2,通过abortBroadcast可终止广播的传播   缺点:效率低   二,发送广播的方法:sendOrderedBroadcast()    三,优先接收到Broadcast...Receiver 通过 Bundle bundle=getResultExtras(true)方法获取上一个 Receiver传来的数据      程序效果:点击按钮,两个Receiver接收同一条广播...//      abortBroadcast();     }   }   Receiver1 package com.song;   //接收从receiver2传来的广播,包含

    1.8K90

    Service 开机接受广播,启动服务的问题

    概述 Android 4.0 (其实在3.1的版本中Google已经给出了说明)无法接收开机广播的问题本身是因为,如果应用程序安装上始终没有被打开过,那么在Android启动时,该应用无法接收到开机时的系统广播...请注意,系统会将FLAG_EXCLUDE_STOPPED_PACKAGES添加到所有的广播Intent中去。它这样做是为了防止广播无意中的或不必要地开展组件的stoppped应用程序的后台服务。...后台服务或应用程序可以通过向广播Intent添加FLAG_INCLUDE_STOPPED_PACKAGES标志来唤醒处于停止状态(stopped state)的应用程序。...所以开机启动的服务必须依赖于activiy。...如果是android4.0及以上,还是需要安装并运行一次,下次开机的时候才能实现接受广播,启动服务。而像2.3之类相对低的版本安装好了之后下次启动,就能直接获取并处理系统的开机广播,不需要先运行一次。

    90530

    Android中AlarmManager+Notification实现定时通知提醒功能

    参数详解 type:闹钟类型 ELAPSED_REALTIME:在指定的延时过后,发送广播,但不唤醒设备(闹钟在睡眠状态下不可用)。如果在系统休眠时闹钟触发,它将不会被传递,直到下一次设备唤醒。...PendingIntent pi:执行动作 是闹钟的执行动作,比如发送一个广播、给出提示等等。PendingIntent是Intent的封装类。...需要注意的是,如果是通过启动服务来实现闹钟提示的话,PendingIntent对象的获取就应该采用Pending.getService(Context c,int i,Intent intent,int...j)方法;如果是通过广播来实现闹钟提示的话,PendingIntent对象的获取就应该采用PendingIntent.getBroadcast(Context c,int i,Intent intent...--闹钟接收广播-- <receiver android:name=".util.service.AlarmReceiver" <intent-filter <action android:

    6.6K32

    边开发边测试--故事从闹钟讲起

    表示闹钟时间到时系统会触发这个PendingIntent所代表的事件(如启动服务/activity/发广播) 然而需要注意的是,如果是通过启动服务来实现闹钟提示的话,PendingIntent对象的获取就应该采用...(这取决于代码开发闹钟广播receiver中处理闹钟事件时,是否为耗时任务分配了wakelock。...:与pendingIntent相关,该intent被实例化后,可以发送广播,启动服务,或者启动Activity,说白了就是唤醒应用的操作。...(3) 闹钟分发广播的即时状态 Broadcast Ref Count: 0 为了使得系统在醒来后,发送必要的闹钟广播帧,并且保证在所有的广播帧没有发送出去之前,系统不要进入睡眠状态,内部定义了一个变量...:alarm被触发,则启动该服务服务实例位置在{}中声明 如果触发的是广播,则格式如: android +4m51s566ms running, 281 wakeups: +2m46s583ms

    1.7K90

    关于Android中设置闹钟的相对比较完善的解决方案

    AlarmManager这个类提供对系统闹钟服务的访问接口。...解决遇到的坑 API 19以后如何设置重复闹钟 我们知道,我们在使用AlarmManager设置了提醒之后,是通过广播接收的,设置的提醒时间一到,系统发送我们自定义的广播,我们接收到,应用程序提醒。...那提醒的时候,我们可以再重新设置一次嘛,这就解决了API 19设置重复闹钟的问题。 根据判断系统版本,使用不同的设置闹钟的方法,进行设置。接下来我们通过广播接收系统发来的通知,进行闹钟提醒。...看看我在手机重启广播里调用了我封装的重新设置闹钟的方法。这样就解决了手机重启之后,闹钟失效的问题。 注意:广播需要在清单文件注册,小伙伴们别忘记了哈。我在这里就不贴出代码来了。...应用程序被杀死,闹钟失效 可以告诉你们的是,这个还真的没有什么好的解决方案,如果你们程序里写了服务,可以在服务重启的时候,判断重新再把闹钟注册一次,或者在打开应用的时候重新注册一次,反正就是能有利于闹钟注册的地方

    1.9K100

    【Android 电量优化】电量优化 ( 使用 AlarmManager 保持 CPU 唤醒 )

    AlarmManager 保持 CPU 唤醒流程 ( 省电操作 ) 三、使用 WeakLock 保持 CPU 唤醒 代码示例 1、Service 代码示例 2、AndroidManifest.xml 服务配置...Google 官方文档 : 优化电池续航时间 管理设备唤醒状态 使设备保持唤醒状态 设置重复闹铃时间 上一篇博客 【Android 电量优化】电量优化 ( 唤醒锁定 | 使用 WeakLock 保持服务唤醒...: 一般使用 AlarmManager 定时发送 延迟意图 PendingIntent 给广播接收者 , 在广播接收者中启动服务 , 或者执行其它任务 ; ④ 降低资源消耗 : 如上述保持 CPU 唤醒...: 获取闹钟管理器 AlarmManager , 并设置每隔 50 秒发送一次广播 , 广播接收者接收到该意图 , 就会处理对应事件 ; // 获取闹钟管理器 mAlarmManager = (AlarmManager...-- AlarmManager 保持 CPU 唤醒的 Service 服务 --> <service android:name=".AlarmManagerService

    1.1K00
    领券