草庐IT

broadcastreceivers

全部标签

Android 地理围栏 BroadcastReceiver

我已经使用GoogleApiClient实现了地理围栏->当触发时,一个服务连接到GoogleApiClient并添加几个地理围栏。在我将另一个IntentService注册为地理围栏事件的“回调”之前。这或多或少起作用,但仅当应用程序处于前台时。因为我也想在应用程序处于后台/关闭时获取地理围栏事件,所以我进行了一些搜索并将回调从IntentService移动到BroadcastReceiver,现在当应用程序处于前台时我什至没有获取地理围栏事件。我已经在互联网上寻求解决方案(最常见的答案:将事件监听器从Service更改为BroadCastReceiver-但这让事情变得更糟)这是我

android - 将 BroadcastReceiver Intent 发送到服务

通常你会像这样启动一个服务Intenti=newIntent(context,MessageService.class);context.startService(i);但我想做的是将在BroadcastReceiver中收到的Intent发送到服务。如果我按照上面显示的方式启动服务,那么BroadcastReceiver的Intent是否正确?基本上我只是想让我的BroadcastReceiver启动我的服务,然后让服务自己处理接收到的Intent类型这可能吗? 最佳答案 将Intent从BroadcastReceiver发送到服

java - 从 BroadcastReceiver 转到上一个 Activity ?

我需要关闭来自广播接收器的当前Activity。我不确定如何从中调用完成,也许有一种方法可以模拟“后退”按键。只要能完成工作,任何实现都可以。@OverridepublicvoidonReceive(Contextcontext,Intentintent){//HowcanIfinishthecurrentactivityhere?} 最佳答案 在你的广播接收器上写:YourCurrentActivityName.this.finish();或者你可以用this.finish();终止前面的activity;所以卡住的最后一个打开出

Android:如何从 BroadcastReceiver 恢复应用程序/Activity ?

如果我的程序如下:启动ActivityA->ActivityB按“主页”按钮。再次点击该应用程序。结果:“ActivityB”出现(它恢复)。启动ActivityA->ActivityB按“后退”按钮。再次点击该应用程序。结果:出现“ActivityA”(它重新启动)。我想从BroadcastReceiver做完全相同的事情。启动ActivityA->ActivityB按“主页”按钮。BroadcastReceiver收到一个广播并想“恢复”应用程序。我的预期结果:“ActivityB”出现。我想从BroadcastReceiver做完全相同的事情。启动ActivityA->Activ

android - ContentObserver 与 BroadCastReceiver : Battery Usage, Ram、CPU?

由于需要关注应用程序的电池使用情况、内存和CPU使用情况,因此多个内容观察器与多个广播接收器的开销是多少?Example1:AservicerunningwithSTART_STICKYusing5contentobserversregistered/unregisteredproperly.Example2:Aservicebeingfiredfrom5broadcastreceiverssetinthemanifest.Example3:AservicerunningwithSTART_STICKYusing5registeredbroadcastreceivers.观察者和接收者

android - 如何获取为特定 Intent 注册的所有 BroadcastReceiver 的列表?

我正在开发操作系统级别的android服务。(不是来自SDK,它来自android源代码。它将成为我自定义ROM的一部分。我可以将自己调整为root)我将为应用程序提供一个界面,以使用我的自定义Intent执行某些操作。最后我想知道谁在听这个Intent。有没有办法获取为特定Intent注册的所有BroadcastReceiver的列表?感谢您的帮助! 最佳答案 从程序中您可以使用PackageManagerandqueryBroadcastReceivers().在“adbshell”中,尝试以下命令:dumpsysActivit

android - BroadcastReceiver onReceive 没有被调用

我在AndroidManifest.xml中定义了一个BroadCastReceiver,如下所示并定义接收器如下:publicclassScreenUnlockReceiverextendsBroadcastReceiver{@OverridepublicvoidonReceive(Contextcontext,Intentintent){//startactivityIntenti=newIntent();i.setClassName("com.example.hello","LoginActivity");i.setFlags(Intent.FLAG_ACTIVITY_NEW_T

android - 当 BroadcastReceiver 运行时,它在哪个线程上运行,系统范围内还是仅在您的应用程序上运行?

我有使用BroadcastReceiver的警报,但我对线程有点困惑。我想让它在一个单独的线程上运行,这样它就不会导致对其他任何东西无响应,但是在查看Android文档时,我仍然不知道是否只有一个主线程,或者每个应用程序都有它的自己的主线程。例如,如果我的应用程序没有运行,如果每个应用程序都运行自己的主线程,那么在BroadcastReceiver中运行一个单独的线程有什么意义,这意味着我不会影响用户的其他进程。由于我的没有运行,所以它不做它的事情不会受到伤害。但相比之下,如果所有应用程序都有一个主线程,那么我需要将操作移动到一个单独的线程。我希望我不是在问一个愚蠢的问题。我只是想彻底

android - 如何在没有 Activity/Service 的情况下创建 BroadcastReceiver?

我正在尝试创建没有Activity/服务的BroadcastReceiver。当我删除Activity时,当代码中存在Activity时注册和执行代码没有问题,但它失败了。我确实使用list(!)注册了BroadcastReceiver,但是当Activity从项目中删除时它没有被调用。谢谢。 最佳答案 Butitisnotbeingcalledwhentheactivityisremovedfromtheproject.在Android3.1及更高版本上,用户必须在任何list注册的BroadcastReceiver工作之前启动您

android - 在 Android 上启动完成后如何在 BroadcastReceiver 上启动 Activity

我使用下面的代码让我的应用程序可以在启动完成10秒后自动启动:publicclassBootActivityextendsBroadcastReceiver{staticfinalStringACTION="android.intent.action.BOOT_COMPLETED";publicvoidonReceive(Contextcontext,Intentintent){if(intent.getAction().equals(ACTION)){context.startService(newIntent(context,BootActivity.class));try{Thr