草庐IT

broadcastreceivers

全部标签

android - 从接收者自己的 onReceive() 方法中注销 'dynamic' BroadcastReceiver 是否可以?

也就是说,我有这个动态创建的BroadcastReceiver来收听一个广播,之后我希望它自行取消注册。我还没有找到任何以这种方式执行此操作的示例代码,但我也没有在android在线文档中找到任何禁止这样做的规则。但是我不能让它在Activity中停留那么久,而且它无论如何都在一个匿名类中,所以包含类甚至不知道变量名。也就是说,代码看起来像这样:myInfoReceiver=newBroadcastReceiver(){onReceive(Contextctx,Intentintt){//dosomeNotificationwhenIgetherenm.notify("Igothere

android - 为 DownloadManager 的 BroadcastReceiver 设置附加功能

这个问题在这里已经有了答案:PassdatatoBroadcastReceiverfromActivityusingDownloadManager(4个答案)关闭6年前。有一种方法可以在DownloadManager的intent中为actionDownloadManager.ACTION_DOWNLOAD_COMPLETE注册额外内容(例如,接收一个在intent中设置为extra的bool值)?这是我创建请求的方式:DownloadManager.Requestreq=newDownloadManager.Request(myuri);//setrequestparameters/

android - 使用 BroadcastReceiver 启动 AsyncTask

我正在尝试在收到推送通知时更新UI的状态。为此,我需要启动一个AsyncTask来执行一些网络操作,然后根据结果更新UI。根据BroadcastReceiver的文档,在接收器中执行异步操作是不安全的,因为执行它的进程可能会在onReceive()返回时立即终止,假设有在该过程中没有其他“应用程序组件”。BroadcastReceiver是在它自己的进程中运行,还是在与包含它的Activity相同的进程中运行?因为只要有要更新的UI,我只关心任务的完成情况,所以我不担心AsyncTask在Activity关闭时死亡。假设BroadcastReceiver与Activity处于同一进程中

android - 从 Activity 启动 BroadCastReceiver

我想从Activity启动一个BroadcastReceiver。我该怎么做? 最佳答案 定义您的BroadcastReceiver:privatefinalBroadcastReceiverreceiver=newBroadcastReceiver(){@OverridepublicvoidonReceive(Contextcontext,Intentintent){//Dosomething}};在onResume中注册你的接收器:@OverrideprotectedvoidonResume(){super.onResume()

android - 检查是否有使用操作字符串注册的 BroadCastReceiver

所以我需要一种方法来查明是否有为特定操作字符串注册的broadCastReceiver。因此,为了检查Intent是否可用,我们有方法(来自http://www.vogella.com/articles/AndroidIntent/article.html)publicbooleanisIntentAvailable(Contextcontext,Stringaction){finalPackageManagerpackageManager=context.getPackageManager();finalIntentintent=newIntent(action);Listresol

android - 将参数传递给 BroadcastReceiver

我正在尝试将一个int值从我的服务传递到CallReceiver类,不幸的是CallReceiver.value始终等于0,即使在设置了另一个值之后也是如此。当我试图将它作为参数传递给构造函数时,情况完全相同,从服务调用的setter方法也是如此。真的没有办法向那里传递任何数据吗?服务:SharedPreferencessettings=getSharedPreferences("SETTINGS",0);intvalue=settings.getInt("value1",0);//herethecorrectvalueispresent,not0.CallReceivermCallR

java - 服务中的 Android BroadcastReceiver 在向其发送广播时给出空指针异常

我的服务中有一个广播接收器,当我从我的Activity向它发送广播以停止服务时,例如,我收到以下错误:java.lang.NullPointerException:Attempttoinvokevirtualmethod'voidandroid.content.BroadcastReceiver.onReceive(android.content.Context,android.content.Intent)'onanullobjectreference这是我的服务类:publicclassPhraseServiceextendsService{publicstaticListphra

android - 使用自定义 broadcastreceiver 接收 Parse 通知

我在我的应用程序中使用解析通知。正在使用GcmBroadcastReceiver接收通知警报。但是我看到我的应用收到了很多通知。我想更新状态栏中的通知,所以我使用了自定义接收器。通过GcmBroadcastReceiver接收通知时,调用了我的自定义广播接收器。所以在我的状态栏中同时具有gcm和自定义通知。我只想要自定义通知。如何解决这个问题?list代码:应用类:Parse.initialize(this,"appid","clientid");Incomingreceiver类:publicclassIncomingReceiverextendsBroadcastReceiver{

BroadcastReceiver 未收到 Android PendingIntent 额外内容

当我将附加信息传递给PendingIntent时,sendBroadcastReceiver永远不会收到消息,因为永远不会调用此BroadcastReceiver的onReceive()方法。为什么会这样?publicclassMainActivityextendsActivity{privatestaticStringSENT="SMS_SENT";privatestaticStringDELIVERED="SMS_DELIVERED";privatestaticintMAX_SMS_MESSAGE_LENGTH=160;privatestaticContextmContext;pr

android - 如何从 BroadCastReceiver 更新 Activity 的 UI

我正在学习Android概念Activity和BroadCastReceiver。我想从BroadtCastReceiver更新Activity的内容,两者都在不同的java类中。有点像MyActivity.java和MyBroadtCastReceiver.java这可以在Android中执行吗? 最佳答案 BroadcastReceiver可以以多种方式使用,但是当涉及到像更新Activity的UI组件这样具体的事情时,声明/定义几乎没有优势BroadcastReceiver在它自己的Java类文件中。推理-BroadcastR