草庐IT

BROADCAST_STICKY

全部标签

android - START_STICKY 用于前台服务

ForegroundService具有非常高的优先级,不太可能被系统杀死,所以在onStartCommandSTART_STICKY有什么意义吗?/?编辑:这个问题不是关于START_STICKY和START_NON_STICKY之间的区别,而是关于START_STICKY与前台服务相关的可用性。 最佳答案 “不太可能被杀死”!=“永远不会被杀死”。例如,用户可以通过多种方式终止你的进程。如果您关心这些情况并希望重新启动您的服务(如果符合条件),请使用START_STICKY或START_REDELIVER_INTENT。如果您愿意

android - 即使在我使用了 START_STICKY 之后,服务也不总是运行

问题即使在我使用了START_STICKY之后,服务也并非始终运行。有时我没有收到任何拨出电话的ToastAction,这是否意味着服务会在一段时间后停止?我的需求每当用户从手机拨出电话时,应用程序都会显示Toast。为此,我使用BroadcastReceiver来点击调用操作和服务(始终运行Receiver)。一旦我开始这项Activity,它就会在拨出电话时开始显示toast..但并非总是如此。完整代码如下-MainActivity.classpublicclassMainActivityextendsActivity{CallNotifierServicem_service;bo

java - 安卓 : Implement Broadcast Receiver for ClipboardManager

我想实现一个监听器,如果有人从任何应用程序复制了任何东西,它就会监听。我听说ClipboardManager.OnPrimaryClipChangedListener()会监听复制操作,但这不是Receiver(据我所知)。我有一个sampleapplication,这个应用程序背后的逻辑是,从系统引导启动服务并运行一个将监听复制操作的服务,但我认为这会耗尽电池。我对吗?那么我该如何实现一个可以监听复制Action的广播接收器。 最佳答案 这是监听器:classClipboardListenerimplementsClipboard

android - 事件总线 : Remove sticky event after consuming

我使用firebase发送通知。当应用程序在前台时,通知由扩展FirebaseMessagingService的类接收。所以在onMessageReceived中,我这样做:EventBus.getDefault().postSticky(newNotificationEvent(body,title,url));我有两个Activity监听这个事件。ActivityA和ActivityB。在这两个Activity中,我都是这样做的:@Subscribe(sticky=true,threadMode=ThreadMode.MAIN)publicvoidconsumeNotificati

Android SMS Delivery Broadcast 接收器在模拟器中不工作

我正在创建一个具有发送短信模块的应用程序。我正在使用2个广播接收器和PendingIntent,一个用于发送确认短信,另一个用于发送..发送的短信广播接收器工作正常,但没有送达。我在服务中使用以下代码。PendingIntentsentPI=PendingIntent.getBroadcast(this,0,newIntent(SENT),0);PendingIntentdeliveredPI=PendingIntent.getBroadcast(this,0,newIntent(DELIVERED),0);//---whentheSMShasbeensent---isworkinga

android - 为什么使用 START_STICKY 重启 Android 服务如此缓慢?

我有一个后台服务,我正在对这个服务进行所有操作。这个服务有时会与Activity一起工作。但是如果应用程序关闭,服务将以START_STICKY重新启动;它工作正常,但有时需要很长时间才能重新启动,比如超过一分钟。@OverridepublicvoidonCreate(){SocketIOConnect();super.onCreate();}@OverridepublicintonStartCommand(Intentintent,intflags,intstartId){returnSTART_STICKY;}如何减少重启时间? 最佳答案

android - 在某些设备中甚至使用 START_STICKY 后杀死应用程序后服务不会再次启动

在我的服务中,我已返回START_STICKY以使我的Service在我终止应用程序后再次重启。我已经测试过,它可以在设备Samsung、Sony、LG中使用,但在Xiaomi中无法使用(服务不支持重新开始)@OverridepublicintonStartCommand(Intentintent,intflags,intstartId){returnSTART_STICKY;}我该如何处理这种情况。任何帮助或建议将不胜感激?来自Android文档/***Constanttoreturnfrom{@link#onStartCommand}:ifthisservice's*process

android - SMS Broadcast Receiver 收不到短信

我做了什么大家好,我现在正在创建一个SMS广播接收器,我刚刚使用本教程构建了一个:Broadcasttutorial.完成代码后,我更新了我的list。之后我从我的另一部手机发送短信到我的手机,但它没有用。我没有得到任何输出。问题我需要更改什么,才能接收这些短信。请给我一个详细的答案,我可以学习它,一个好的教程也很棒!代码SMSBroadcastReceiver(在.services包中)packagede.retowaelchli.filterit.services;importde.retowaelchli.filterit.R;importandroid.app.Notifica

android - START_STICKY 用于 IntentService

我见过许多android服务示例,其中返回START_STICKY用于在启动时启动应用程序,但无论如何我可以对IntentService使用相同的示例。我知道Service方法在主UI线程上运行,而IntentService作为单独的线程运行。但是它们究竟如何被调用以及为什么无法在启动时启动IntentService。由于IntentService在单独的线程上运行,因此如果我不介意的话,我们可以更好地控制它。我尝试在IntentService中使用onStartCommand,但我的应用程序在启动时崩溃,即使它在手动启动时运行良好。我们可以覆盖IntentService中的onSta

Android Broadcast Receiver 与 MainActivity 通信(向 Activity 发送数据)

我有一个简单的MainActivity,它必须在收到SMS之前停止...我如何从BroadcastReceiveronReceive()方法?SignalandWait有没有用?我能否传递带有未决Intent的内容,或者我如何实现此通信? 最佳答案 从BroadcastReceiver到Activity的通信很棘手;如果Activity已经消失怎么办?如果我是你,我会在Activity中设置一个新的BroadcastReceiver,它将接收CLOSE消息:privateBroadcastReceivercloseReceiver;