草庐IT

broadcastReceiver

全部标签

android - 是否可以在锁定设备后继续在 android 平台上运行服务?

我们一直致力于为安卓平台开发服务。在我们的服务中,我们需要每隔一分钟将设备的GPS数据(纬度和经度)发送到一些外部REST服务。锁定设备后,它可以正常运行近15分钟。但在那之后它不发送任何数据。解锁设备后,它再次开始通过REST服务发送数据。到目前为止我的代码publicclassMainActivityextendsAppCompatActivity{privatePendingIntentpendingIntent;privatePowerManager.WakeLockwakeLock;publicstaticfinalStringUSER_NAME="USERNAME";Str

android - Wifi 扫描结果广播接收器不工作

我编写了一个简单的广播接收器来在wifi扫描完成时显示toast消息。什么都没有显示。这是我的代码:packagecom.wifi;importjava.util.List;importandroid.content.BroadcastReceiver;importandroid.content.Context;importandroid.content.Intent;importandroid.net.wifi.ScanResult;importandroid.net.wifi.WifiManager;importandroid.widget.Toast;publicclasswif

android abortBroadcast 不会停止广播短信

在我的onReceive方法中我有这段代码:if(from.equals(number)){abortBroadcast();in.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);context.startActivity(in);Toast.makeText(context,str,Toast.LENGTH_SHORT).show();}else{Toast.makeText(context,"Notfromneedednumber",Toast.LENGTH_SHORT).show();}其中number="29853"-我想从中捕获但不保存在收件箱

android - 使用本地服务更新 Activity 中的 Textview

我有一个带有R.id.eventDistance和R.id.eventTime的Activity来显示基于当前位置的距离和旅行时间。我使用我的定位服务类每30秒计算一次这些值。我的问题是:如何更新Activity中的TextView?我尝试查找问题并找到了一些可能的解决方案,例如使用BroadcastReceiver并在onReceive()方法中调用TextView.setText()。我不确定这是怎么做到的。我应该像这样传递Activity类吗:publicclassMyReceiverextendsBroadcastReceiver{@OverridepublicvoidonRe

android - 如果我不启动服务或 Activity ,我的广播接收器是否需要唤醒锁?

我有一个由Alarm调用的broadcastreceiver(使用AlarmManager安排)。在这个接收器中,我只从数据库中查询一个寄存器,并启动一个通知。我读到当服务或Activity从广播接收器启动时需要唤醒锁,但是,如果我只想显示通知(在通知面板中),我是否需要唤醒锁? 最佳答案 InthisreceiverI'monlyqueryingaregisterfromthedatabase,andlaunchinganotification.不要在主应用程序线程上执行数据库I/O。Ireadedthatawakelockisn

android - 从 BroadcastReceiver 调用时 startActivity 不工作

我有一个通知,当我选择时,它使用PendingIntent将Broadcast发送到BroadcastReceiver。在onReceive中,我启动了一个新的Activity。但是,如果我从最近打开的应用程序中删除我的应用程序(或者通知在抽签中停留很长时间),就会出现这种情况:当我在抽屉中有多个通知时,第一个打开时效果很好。点击第二个后,我的onCreate()和我的onResume()都被调用了,就好像startActivity()不工作一样根本。如果我添加标志Intent.FLAG_ACTIVITY_SINGLE_TOP然后调用onNewIntent。notificationIn

android - 如何在 Android 的不同应用程序中使用 Broadcast Receiver?

我在eclipse的两个不同项目中有两个应用程序。一个应用程序(A)定义了一个首先启动的Activity(A1)。然后我从这个Activity开始第二个项目(B)中的第二个Activity(B1)。这很好用。我按以下方式启动它:Intentintent=newIntent("pacman.intent.action.Launch");intent.addFlags(Intent.FLAG_ACTIVITY_SINGLE_TOP);startActivity(intent);现在我想通过使用广播接收器在两个Activity之间发送Intent。在ActivityA1中,我通过以下方式发送

安卓应用更新广播

所以,我正在做一些需要我知道设备上的另一个应用程序何时更新的事情。所以我的问题很简单,假设YouTube或Spotify在应用程序更新时发送广播,如果是这样,我需要用我的broadcastReceiver捕捉什么。 最佳答案 你的Intent过滤器应该是这样的:您的BroadcastReceiver的onReceive方法应该是:@OverridepublicvoidonReceive(Contextcontext,Intentintent){Uridata=intent.getData();if(data.toString().e

Android 显示来自 BroadcastReceiver 的通知

我有一个扩展BroadcastReceiver的类,只要有新的Wifi扫描结果可用,它就会被调用(接收器在list中注册,Scan_Results广播作为intent-filter)。在这个类中,我希望能够向用户显示通知。目前,我将在我的广播Intent类的onReceive方法中作为参数接收的上下文传递给另一个类的“显示通知”方法。当它到达线路时:myNotificationManager.notify(notificationId,notification);失败并出现以下异常:java.lang.IllegalArgumentException:contentViewrequir

android - android中未接来电的广播接收器

有谁知道未接来电的Intent是什么。实际上我想在我的应用程序中发送有关未接来电和来电的短信。 最佳答案 你需要使用一个ContentObserverpublicclassMissedCallsContentObserverextendsContentObserver{publicMissedCallsContentObserver(){super(null);}@OverridepublicvoidonChange(booleanselfChange){Cursorcursor=getContentResolver().query