Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/200.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 用于屏幕关闭/打开的广播接收器和服务_Android_Eclipse_Service_Broadcastreceiver - Fatal编程技术网

Android 用于屏幕关闭/打开的广播接收器和服务

Android 用于屏幕关闭/打开的广播接收器和服务,android,eclipse,service,broadcastreceiver,Android,Eclipse,Service,Broadcastreceiver,好的,所以我在尝试让广播接收器和服务在屏幕关闭和屏幕打开的情况下正常工作时遇到了一些问题 我想做的是在屏幕关闭或打开时启动一些东西。我从一个用于测试的活动中获得了它,但该活动当前必须正在运行。我需要从背景开始 现在,我知道在清单中使用intent过滤器对于screen_off和on都不起作用。我怎样才能做到这一点?我想这会有点像锁屏 Screen off->启动某个示例活动或创建日志消息,因为toast不起作用添加接收者: public class BroadcastReceiverScreen

好的,所以我在尝试让广播接收器和服务在屏幕关闭和屏幕打开的情况下正常工作时遇到了一些问题

我想做的是在屏幕关闭或打开时启动一些东西。我从一个用于测试的活动中获得了它,但该活动当前必须正在运行。我需要从背景开始


现在,我知道在清单中使用intent过滤器对于screen_off和on都不起作用。我怎样才能做到这一点?我想这会有点像锁屏

Screen off->启动某个示例活动或创建日志消息,因为toast不起作用

添加接收者:

public class BroadcastReceiverScreenListener extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

    if (Objects.equals(intent.getAction(), Intent.ACTION_SCREEN_OFF)) {

        ** Do your stuff**

    }
}
从文档中: 您无法通过中声明的组件接收此信息 清单,仅通过在 registerReceiverBroadcastReceiver,IntentFilter 这是一个受保护的意图,只能发送 通过系统。

添加接收器:

public class BroadcastReceiverScreenListener extends BroadcastReceiver {

@Override
public void onReceive(Context context, Intent intent) {

    if (Objects.equals(intent.getAction(), Intent.ACTION_SCREEN_OFF)) {

        ** Do your stuff**

    }
}
从文档中: 您无法通过中声明的组件接收此信息 清单,仅通过在 registerReceiverBroadcastReceiver,IntentFilter 这是一个受保护的意图,只能发送
通过系统。

现在,我知道在清单中使用意图过滤器不适用于屏幕关闭和打开。-你是怎么知道的?为什么不行?研究和阅读。我也试过了。。。这是另一个例子,那么你为什么不把这个链接放在你自己的问题中,以证明你是如何知道这一点的呢?然而,更重要的是,你为什么不接受这个问题答案的建议呢?长短不一的是……如果您有一个正在运行的活动或服务,那么您可以注册一个BroadcastReceiver来侦听这些事件,并且它将在这些对象的生命周期内存在。然而,你不应该期望能够“全球”监控它们。毕竟,如果我按下手机上的“开”按钮只是为了查看锁屏上的时间,为什么我会希望你的应用程序做任何事情?好吧,你为什么希望我的应用程序做一些事情的一个例子是,如果它是锁屏或覆盖锁屏一部分的东西,有点像一个小部件……现在,我知道在清单中使用意图过滤器不适用于屏幕的关闭和打开。-你是怎么知道的?为什么不行?研究和阅读。我也试过了。。。这是另一个例子,那么你为什么不把这个链接放在你自己的问题中,以证明你是如何知道这一点的呢?然而,更重要的是,你为什么不接受这个问题答案的建议呢?长短不一的是……如果您有一个正在运行的活动或服务,那么您可以注册一个BroadcastReceiver来侦听这些事件,并且它将在这些对象的生命周期内存在。然而,你不应该期望能够“全球”监控它们。毕竟,如果我按下手机上的“开”按钮只是为了查看锁屏上的时间,为什么我会希望你的应用程序做任何事情?好吧,你为什么希望我的应用程序做一些事情的一个例子是,如果它是锁屏或覆盖锁屏一部分的东西,有点像一个小部件。。。