gpt4 book ai didi

android - 无需等待 Intent 通知即可获取屏幕/电话状态

转载 作者:行者123 更新时间:2023-11-30 04:05:48 24 4
gpt4 key购买 nike

我创建了一些可以正常工作的 Intent 过滤器,但是 - 我只知道屏幕/手机在更改后处于什么状态。我如何找到当前状态?这是我的过滤器 -

    receiver = new EventHandler();
IntentFilter filter = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
filter.addAction(Intent.ACTION_SCREEN_ON);
filter.addAction(Intent.ACTION_SCREEN_OFF);
filter.addAction(TelephonyManager.ACTION_PHONE_STATE_CHANGED); // for calls
registerReceiver(receiver, filter);

即使电池状态没有改变,我也会立即收到通知。如果其他 Intent 触发了这样的虚拟通知,那就太好了。

谢谢。

最佳答案

您只能立即返回电池状态,因为 ACTION_BATTERY_CHANGED 是一个sticky 广播,并且始终存在。

其他三个是一次性广播 Intent ,仅在“ Action ”发生时发送。您将需要调用各种“管理器”类的方法来获得即时状态。

例如,TelephonyManager 有一个 getCallState() 方法,而 PowerManager 有一个 isScreenOn() 方法.

我自己也没有尝试过,但文档表明它们可以满足您的需要。

看...

TelephonyManager

PowerManager

关于android - 无需等待 Intent 通知即可获取屏幕/电话状态,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11702563/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com