草庐IT

BroadCastReceiver

全部标签

android - 如何从 BroadcastReceiver 启动一项 Activity ?

我有一个广播接收器(c2dm推送接收器)。当我收到推送时,我希望发生这种情况:启动通知,您将被引导至StopAlarmActivity(完成!)如果应用程序在前面,启动StopAlarmActivity(我如何检查)我的主要问题是我无法让广播接收器为我启动StopAlarmActivity。我已经在list中注册了广播接收器。这是我用来尝试启动Activity的代码:IntentintentHome=newIntent(context,StopAlarmActivity.class);intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);cont

android - 蓝牙 ACTION_FOUND broadcastReceiver 不工作

我正在尝试计算蓝牙RSSI并找到了一些示例,但是broadcastReceiver不工作。代码是这样的:privatefinalBroadcastReceiverreceiver=newBroadcastReceiver(){@OverridepublicvoidonReceive(Contextcontext,Intentintent){Stringaction=intent.getAction();if(BluetoothDevice.ACTION_FOUND.equals(action)){intrssi=intent.getShortExtra(BluetoothDevice.

android - Broadcastreceiver组件不允许绑定(bind)到android中的服务

这是我正在做的:publicvoidonReceive(Contextcontext,Intentintent){//TODOAuto-generatedmethodstubConnectivityManagerconn=(ConnectivityManager)context.getSystemService(Context.CONNECTIVITY_SERVICE);NetworkInfoactiveNetwork=conn.getActiveNetworkInfo();booleanisConnected=activeNetwork!=null&&activeNetwork.is

android - 如何使用 BroadcastReceiver 在 Android 中获取当前连接的 WiFi 网络的名称

这个问题在这里已经有了答案:Howtogetnameofwifi-networkoutofandroidusingandroidAPI?(4个答案)关闭9年前。在我的BroadcastReceiver实现中,我想在用户连接到具有特定名称的WiFi网络时运行一些Activity。我怎样才能做到这一点?如何在BroadcastReceiver中获取Wifi网络名称?我怎样才能知道这是wifi连接?谢谢!我已经有一个代码:publicclassConnectionChangeReceiverextendsBroadcastReceiver{@OverridepublicvoidonRecei

android - 在不创建 Activity 实例的情况下从 BroadCastReceiver 类调用 Activity 的方法

我想做与以下链接中问题中提到的完全相同的事情CallanactivitymethodfromaBroadcastReceiverclass.但是给出的解决方案对我不起作用,我不能在那里发表评论,因为我没有足够的声誉。我做了解决方案中提到的所有事情,但我的广播接收器无法使用该代码。我只想在接收到广播请求时调用Activity中的方法,而不创建Activity的实例。可以吗?编辑:现在我正在添加代码。HereismyMainActivityclasspublicclassMainActivityextendsActivity{publicstaticfinalStringTAG="App1

android - BroadcastReCeiver 内部实现

我想了解广播接收器的内部工作原理。当我调用registerReceiver()方法时内部发生了什么?它是否在内部创建服务?当我调用sendBroadcast时内部会发生什么?如果我必须实现自己的BroadcastReceiver类(不扩展AndroidBroadcastReceiver类)我该如何实现?我做了很多研究,但我只发现了BroadcastReceiver是如何工作的。我也查看了Android源代码以了解它是如何工作的,但它也没有帮助。 最佳答案 您写道,您需要在不扩展AndroidBroadcastReceiver的情况下

android - BroadcastReceiver goAsync() 返回 null PendingResult

我有一个BroadcastReceiver,我想在其中执行一些脱离UI线程的工作。根据exampleintheBroadcastReceiverdocumentation,我首先调用goAsync(),它返回一个PendingResult,然后在我的非UI线程中调用PendingResult.finish()。但是,我得到一个NullPointerException,因为goAsync()返回null。我做错了什么?这是一个复制该行为的简单示例。我使用了targetSdkVersion27和minSdkVersion23:packagecom.example.broadcastrece

android - BroadcastReceiver.onReceive 为 user_present 调用两次

我有一个奇怪的(?)问题,我已经为USER_PRESENT实现了BroadcastReceiver,它在我的平板电脑上工作正常,但在我的GalaxyS上,它被触发了两次有人可以在这里阐明一些问题吗?我在onReceive方法中有一个简单的语句,它打印了两次,在logcat中我也看到了以下两次:11-2317:36:35.603:INFO/Launcher(2632):ACTION_USER_PRESENT 最佳答案 可能是您在设备中安装了两次该应用程序(广播接收器存在于两个不同的应用程序中)。请验证并卸载所有测试应用程序。然后做测试

java - 重启后 BroadcastReceiver 不工作

我的BroadcastReceiver工作正常,但是当我重新启动手机时,所有通知都停止工作。AndroidManifest.xmlAlarmReceiver.javapublicclassAlarmReceiverextendsBroadcastReceiver{@OverridepublicvoidonReceive(Contextcontext,Intentintent){//Getid&messagefromIntentintnotificationId=intent.getIntExtra("notificationId",0);Stringmessage=intent.get

java - 在 BroadcastReceiver() 中检索调用上下文

我正在尝试显示来自广播接收器的警报对话框fragment,但接收器不在将显示该fragment的Activity中(接收器处理此事件上广播的所有错误,无论它是否是ActivityActivity).这是我当前的接收器:privateBroadcastReceivermHttpPostReceiver=newBroadcastReceiver(){@OverridepublicvoidonReceive(Contextcontext,Intentintent){if(intent.getStringExtra("Error")!=null){//erroroccurred//called