Android中如何把在broadcastreceiver中耗时的任务交给service处理

移动开发 > Android [问题点数:20分,结帖人qiulongjiemajianyun]
等级
本版专家分:0
结帖率 64.29%
等级
本版专家分:3490
勋章
Blank
黄花 2014年10月 移动开发大版内专家分月排行榜第二
等级
本版专家分:24431
勋章
Blank
红花 2014年1月 移动开发大版内专家分月排行榜第一
Blank
黄花 2015年9月 移动开发大版内专家分月排行榜第二
2015年6月 移动开发大版内专家分月排行榜第二
2014年12月 移动开发大版内专家分月排行榜第二
2014年7月 移动开发大版内专家分月排行榜第二
2013年12月 移动开发大版内专家分月排行榜第二
2013年11月 移动开发大版内专家分月排行榜第二
2013年10月 移动开发大版内专家分月排行榜第二
Blank
蓝花 2014年11月 移动开发大版内专家分月排行榜第三
2014年2月 移动开发大版内专家分月排行榜第三
等级
本版专家分:3490
勋章
Blank
黄花 2014年10月 移动开发大版内专家分月排行榜第二
等级
本版专家分:581
等级
本版专家分:0
等级
本版专家分:3490
勋章
Blank
黄花 2014年10月 移动开发大版内专家分月排行榜第二
等级
本版专家分:0
等级
本版专家分:384
等级
本版专家分:5
coding老兵

等级:

为什么不能直接在BroadCastReceiver中开一个线程执行耗时任务

所以onReceive方法,不要执行耗时任务,如果该方法执行时间超过10秒,Android就会认为该程序无响应,并弹出ANR的对话框。如果必须执行耗时任务可以考虑,onReceive开启服务来执行,但不要使用线程,因为...

如何 BroadcastReceiver 执行耗时操作?

一、BroadcastReceiver 注册方式  BroadcastReceiver 有两种注册方式,一是使用 { Context.registerReceiver()} 动态注册,另一种是 AndroidManifest.xml通过 元素静态注册。 Note: ...

android中broadcastreceiver不可以做耗时操作

注意:由于Broadcast和Service一样,都运行主线程,所以这两个里面我们无法做一些长时间的耗时操作 广播接收者( BroadcastReceiver )用于接收广播 Intent ,广播 Intent 的发送是通过调用Context....

Android~Service+BroadcastReceiver使用

Android~Service+BroadcastReceiver使用

BroadcastReceiver中耗时操作

2)由当前BroadcastReceiver启动新的Service,新的Service中操作   其实,第一种方法并不推荐。因为大家都知道,安卓内存不足或其他资源不够的情况下会作清理。而BroadcastReceiver在...

Android四大组件:BroadcastReceiver史上最全面解析

在Android开发BroadcastReceiver的应用场景非常多 今天,我将详细讲解关于BroadcastReceiver的一切相关知识 目录1. 定义BroadcastReceiver,本质上是一个全局的监听器,属于Android四大组件之一。 Android广播...

Android开发BroadcastReceiver不执行onReceiver

我注册了一个广播监听器,并app的一个service开的一个子线程里面循环发送广播,然而这个广播接收器一开始能执行onReceive,过了几分钟以后,就不执行onReceive了,我调试了很久,确定广播已经发出去了,并且服务...

利用IntentService实现在broadcastreceiver中比较耗时任务

============================== 主界面手动发送广播 package com.huawei.tj.bi.monitor; import android.os.Bundle; import android.app.Activity; import android.content.Intent; import android.view....

BroadCastReceiver中耗时操作导致ANR

現象:廣播接收器進行耗時的I/O操作導致ANR。 查資料發現每次广播到来时 , 会重新创建 BroadcastReceiver 对象 , 并且调用 onReceive() 方法 , 执行完以后 该对象即被销毁 . 当 onRecei

在BroadCastReceiver的onReceive方法执行耗时操作的正确姿势

经常听说onReceive执行耗时操作要开个Service,不要用子线程。  原因嘛,BroadCastReceiveronReceive方法执行时是激活状态,只要onReceive一返回,它即为失活状态。Receiver进程是被一个激活状态的...

Android Service 服务(二)—— BroadcastReceiver

一、 BroadcastReceiver简介BroadcastReceiver,用于异步接收广播Intent,广播Intent是通过调用Context.sendBroadcast()发送、BroadcastReceiver()接收。广播Intent的发送是通过调用Context.sendBroadcast()、...

Android Service 服务 二 BroadcastReceiver

分享一下我老师大神的人工智能教程!零基础,通俗易懂!http://blog.csdn.net/jiangjunshow也欢迎大家转载本篇文章。分享知识,造福人民,实现我们中华民族伟大复兴!   ... 一、 Broadcas

Android开发——BroadcastReceiver知识总结

0. 前言BroadcastReceiver作为Android四大组件之一,像一个全局的监听器一样,是用来监听系统或者应用发出的广播信息,再其onReceive()执行相应的逻辑处理。如可以监听系统的开机广播、电量较少的广播,也可以...

在BroadCastReceiver的onReceive方法执行耗时操作的正确姿势到底是什么

经常听说onReceive执行耗时操作要开个Service,不要用子线程。  原因嘛,BroadCastReceiver默认情况下是主线程执行的,所以它所在的进程就是这个应用的进程,而当用户退出这个应用后,应用所在的进程因为不...

AndroidServiceBroadCastReceiver小结

 Android中的服务和windows的服务是类似的东西,服务一般没有用户操作界面,它运行于系统不容易被用户发觉,可以使用它开发如监控之类的程序。  广播接收者(BroadcastReceiver)用于接收广播Intent,广播...

【阿里面试题】BroadcastReceiver 不能执行耗时操作

原因有二: 第一 BroadcastReceiver 一般...并且其中开启子线程执行耗时任务。 系统会认为该进程是优先级最低的 空进程。很容易将其杀死。 测试代码: /** * 时间:2017/12/19 14:05 * @author duqingquan...

浅谈android ServiceBroadCastReceiver

 Android中的服务和windows的服务是类似的东西,服务一般没有用户操作界面,它运行于系统不容易被用户发觉,可以使用它开发如监控之类的程序。  广播接收者(BroadcastReceiver)用于接收广播Intent,广播...

Android 四大组件(Activity、ServiceBroadCastReceiver、ContentProvider)

Android四大基本组件分别是Activity,Service服务,Content Provider内容提供者,BroadcastReceiver广播接收器。 一、了解四大基本组件 Activity : 应用程序,一个Activity通常就是一个单独的屏幕,它上面可以...

AndroidService&BroadCastReceiver

AndroidService&BroadCastReceiver 博客分类:  andriod小记 AndroidXMLOSJMSthread  1.题记  Android中的服务和windows的服务是类似的东西,服务一般没有用户操作界面,它运行于系统不容易...

Android开发让广播来启动Service进行耗时工作的处理过程详解

今天复习了服务的基础知识,下面尝试使用广播来启动一个Service进行耗时工作的处理。 首先明白,当启动服务的时候有两种方法,一种是使用StartService,另一种是使用bindService,使用bindService启动的话执行的方法...

Android详细教程(基础篇):二十八、Android 广播机制BroadcastReceiver

广播机制(BroadcastReceiver) 11.1. BroadcastReceiver简介...比如,Symbian,你要等待一个来电消息,显示归属地之类的,必须让自己的应用忍辱负重偷偷摸摸的开机启动,消隐图标隐藏任务项,潜伏后台,监控...

servicebroadcastreceiver都是运行ui线程

android 中servicebroadcastreceiver都是运行ui线程,,如果他们执行耗时操作,若果操作持续的时间超过android平台的约定,那么android平台会认为该程序出现异常,从而抛出ANR异常。

【菜鸟之路】尝试Service处理耗时任务

最近做练习项目的时候发现,有很多像数据库操作这样的耗时...首先,ServiceAndroid四大组件的一个,它和Activity非常相似,也有自己的生命周期,但不和用户交互,而是长时间留驻后台运行,它与线程Thread没什么

Android四大组件之BroadcastReceiver与本地广播——LocalBroadcastManager

BroadcastReceiver Broadcast 是一种广泛运用的应用程序之间传输信息的机制。而BroadcastReceiver 是对...生命周期很短 不能做耗时操作 要提交给service 设置广播接收方式 可分为普通广播 和 有序广播 普...

Android四大组件之BroadCastReceiver

1、BroadCastReceiver简介BroadCast广播,BroadCastReceiver广播接收者。广播是一种运用应用程序之间传输信息的机制,BroadCastReceiver是对发送出来的广播接收并响应的组件。Android系统,很多系统通知都是由...

Android广播--BroadcastReceiver 本地广播LocalBroadcastManager 8.0删除静态广播行为

在Android中,Broadcast是一种广泛应用应用程序之间传输信息的机制,Android中我们要发送的内容是一个Intent,而我们要发送的数据由Intent包装。 而BroadcastReceiver是一个专注于接收广播发出的信息,并作出对应...

Android学习之IntentService执行耗时任务

我们都知道在Service里面我们不能直接进行耗时操作,一般都需要去开启子线程去做一些事情,自己去管理Service的生命周期以及子线程并非是个优雅的做法;好在Android给我们提供了一个类,叫做IntentService。 ...

android耗时任务_ANR

虽然这个提示框有等待和关闭应用程序两种选择,但是它的弹出就已经影响了用户使用app过程的体验,所以一般来说,Android开发的过程都会严格控制ANR的出现。 ANR表面原因:应用一定时间内(一般是5秒)没有...

android 直接activity/broadcast receiver启动子线程来处理长时间的耗时任务不行吗?

如果开发者需要Service处理耗时任务,建议在Service中另外启动一条新线程来处理耗时任务.就像前面BindService中看到的,程序BindService中 的。nCreate()方法中启动了一条新线程来处理耗时任务.可能有读者...

相关热词 c#读取栈中所有的值 c# rsa256加密 好 学c# 还是c++ c# 和java的差距 c# curl网络框架 c# https证书请求 c#窗体自动弹出子窗体 c# singleton c#中类的默认值是 c#各种进制之间的转换