在我的应用程序中,当通知到达时,如果屏幕已锁定,则不会调用BroadcastReceiver。但是当屏幕解锁时,BroadcastReceiver被调用并显示通知。我还在list中添加了以下权限:android.permission.WAKE_LOCK但还是不行。 最佳答案 这是适合我的代码:NotificationManagermManager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE);Notificationnotification=n
您好!我正在开发一个BroadcastReceiver监听“android.intent.action.PHONE_STATE”的应用程序,它在电话状态更改时运行(我用它在检测到来电时运行代码)。这在我的大多数测试手机上都可以正常工作,但有一些似乎根本不会触发接收器。但是,一旦这些有问题的手机重新启动,一切都会按预期进行。在BroadcaseReceiver接收任何东西之前,这些电话是否需要重启?有没有一种方法可以检测它是否未运行并手动“启动”BroadcaseReceiver?我很困惑,所以如果你能提供任何帮助,我将不胜感激。谢谢。 最佳答案
我开发了一个接收广播的应用程序,然后启动一个Activity,其中Activity查询一个ContentProvider实时从DNS中提取信息。我希望能够对此进行洗牌,而不是去:BroadcastReceiver.onReceive(){Intentintent=newIntent(...);intent.setData(...);//setasingleStringdatacontext.startActivity(intent);}Activity.onCreate(){Stringvalue=intent.getData();//gettheStringdataCursor=Co
我有一个BroadcastReceiver类。我在onReceive()方法中声明了一些静态变量,其值已更新。据我所知,静态变量将在onReceive调用中保持其值(value)。有没有可能我会丢失这些值(比如我的类将被卸载并重置静态变量)?这些基本上是我需要可用于多个onReceive调用的一些临时变量。 最佳答案 来自BroadcastReceiverLifecycle的文档...ABroadcastReceiverobjectisonlyvalidforthedurationofthecalltoonReceive(Conte
我正在尝试使用BroadcastReceiver中的Firebase数据库来获取一些数据。不幸的是,用户有时是null,这意味着我不能使用UID来获取数据。@OverridepublicvoidonReceive(finalContextcontext,Intentintent){FirebaseAuth.getInstance().addAuthStateListener(newFirebaseAuth.AuthStateListener(){@OverridepublicvoidonAuthStateChanged(@NonNullFirebaseAuthfirebaseAuth)
是否为在BroadcastReceiver.onReceive方法中运行的操作定义了任何时间限制? 最佳答案 onReceive()在主应用程序线程上调用,与驱动UI的线程相同。通常,您希望onReceive()在一毫秒内返回,以防您的UI位于前台,这样您就不会卡住UI(又名“卡顿”)。还有5-10秒的限制,超过Android基本上会使您的应用崩溃。但是,您不能可靠地从onReceive()派生后台线程,因为一旦onReceive()返回,如果您不在前景。对于list注册的接收器,典型的模式是让onReceive()将工作委托(de
我有一个扩展BroadcastReceiver的类。收到短信后,我想将信息传递给我的主要Activity类以在框中显示文本(如果已经存在文本,则追加)。publicclassSmsReceiverextendsBroadcastReceiver{@OverridepublicvoidonReceive(Contextcontext,Intentintent){Intenti=newIntent(context,MainActivity.class);i.putExtra("updatedString","Hello");context.startActivity(i);}}主Activ
我的BroadcastReceiver没有收到任何东西。很可能是我的设置错误,因为我找不到任何好的例子。我需要我的接收器在我的MainActivity中接收一些东西,并更改一个View。我在一个Android项目中有几乎相同的代码,它在这里工作,但是BroadcastReceivers在Xamarin中的实现似乎有点不同(在Android中,我可以创建一个几乎像对象一样的新BroadcastReceiver,但在Xamarin或C#中,看来我必须创建自己的类(class),因此没有直接引用View的相同可能性)。如果我让它工作,我也会为每个人发布一个完整的工作示例。以下是我尝试设置它的
我想在每个星期一的上午9:00和下午05:00重复我的任务。我为此使用了以下代码,但我无法重复该任务。Activity代码:publicclassAndroidScheduledActivityextendsActivity{/**Calledwhentheactivityisfirstcreated.*/intid=115;IntentmyIntent;PendingIntentpendingIntent;AlarmManageralarmManager;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCre
我注意到,每当我通过长按手机的后退按钮手动终止我的应用程序时,我的广播接收器就会停止工作。接收器负责在用户每次挂断电话时显示通知,并在manifest.xml中注册。这是正常/预期的行为吗?我认为即使用户决定终止我的应用程序,接收器也应该继续工作...有没有办法防止这种情况发生?谢谢。编辑这是接收方的list条目: 最佳答案 地球上大约有70亿人。什么叫“杀”,只有你自己知道。不过,您描述的症状与“强行停止”一致。用户通常会强制停止应用程序,方法是转到“设置”,在已安装应用程序列表中找到您的应用程序,然后点击您应用程序的“强制停止”