问题标签 [powermanager]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 锁定屏幕上的 Android 活动
我的项目需要帮助,我应该让 BroadcastReceiver 在当前锁定屏幕上启动全屏活动。我在我的活动中试过这个:
广播接收器:
AndroidManifest.xml:
但它不适用于我的 android 7.0.1 手机
java - 如何强制关闭设备?
当前 eclipse/android studio 无法构建应用程序并出现错误:未定义函数 gotosleep();
这里在清单中添加:
并将包更改为:
我们不希望设备管理员锁使 android 睡眠,因为它与 PowerManager 不同,并且不确定更改设置超时是否会与 PowerManager 达到类似的结果,但不确定它是否可以通过编程方式唤醒(打开屏幕)。
问候, 维姆斯
android - WakeLock 在现代 Android 中的用途?
在引入 Doze 和 Foreground Services 之后,我很难理解WakeLock在现代版本的 Android 中的用途。
似乎 WakeLocks 在这一点上几乎是遗留的(尽管没有标记为已弃用),被前台服务所取代(因为 WakeLocks 实际上不受Doze的尊重)。
从文档中:“使用唤醒锁的一个合法案例可能是后台服务需要获取唤醒锁以保持 CPU 在屏幕关闭时运行以完成工作” - 但在引入打盹和前台服务,是吗?
是否还有使用 WakeLocks 的合法用例(而不是例如前台服务)?
java - 神秘的 java.lang.RuntimeException:在 android.os.PowerManager$WakeLock.acquireLocked (PowerManager.java:2212)
已经在生产环境中运行多年的应用突然决定抛出一次 RuntimeException。
这是由 Play 管理中心崩溃跟踪页面报告的。我所知道的只是它发生在运行 Android 8.0 的 Galaxy S7 上
完整的堆栈跟踪是
抛出的异常中很可能包含一条很好的描述性消息,但不幸的是,异常消息没有也从未包含在 Play 管理中心崩溃报告中。
如果我知道如何找到 PowerManager 类的这个特定版本的源代码,我可以在那里查找。但可惜,这也被证明超出了我的能力范围。
任何帮助或建议将不胜感激。
谢谢
android - 音乐播放器卡住部分唤醒锁(背景)
我有一个 android 音乐播放器,我在 Play Console 中看到“卡住部分唤醒锁(背景)”。我不知道如何解决它。我搜索我的代码,当我初始化播放器时,我发现的唯一代码如下。
android - 如何以编程方式确定 Android 应用程序是否在三星 Galaxy 上进入睡眠状态?
三星 Galaxy 具有让应用程序进入睡眠状态的功能——据我了解,这与应用程序的电池优化不同。
我需要以编程方式检查应用程序是否配置为睡眠,以便我可以正确警告用户这一点以及后台任务无法运行的事实。
我知道PowerManager.isIgnoringBatteryOptimizations()
这似乎与是否让应用程序进入睡眠状态无关。
java - 为了确保显示使用 BroadcastReceiver 创建的活动,应该使用 PowerManager 唤醒设备多长时间?
我有我的AlarmManager
,在任何时间后都会导致我的BroadcastReceiver
. 所以当然设备可以处于空闲(睡眠)模式,包括密码锁定。我想知道使用https://developer.android.com/training/scheduling/wakelock.html#javaPowerManager
是否是
好的做法和
必要性
“创建和保持唤醒锁会对主机设备的电池寿命产生巨大影响。因此,您应该仅在绝对必要时使用唤醒锁,并尽可能短地保持它们。例如,您永远不需要使用唤醒锁锁定活动。如上所述,如果您想在活动中保持屏幕开启,请使用 FLAG_KEEP_SCREEN_ON。
为了更好地理解:最后它应该是默认 Android 闹钟的副本。
显现:
广播接收器:
意图打开的活动:
这是我可以让设备在手机处于空闲(睡眠)模式并使用密码锁定的确切时间唤醒的唯一方法。如果我将它PowerManager
放入 RingtoneAlarm Activity 它不起作用,因为没有创建 Activity,因此getWindow().addFlags(....);
没有激活。我找不到让它工作的方法PowerManager
(如前所述:文档说这不是好的做法)。更重要的是,它感觉PowerManager
只是一种解决方法,因为我只需要在BroadcastReceiver
RingtoneAlarm 活动创建之间的那一小段时间里使用它,而且它可能会在未来被弃用,就像FLAG_TURN_SCREEN_ON
.
那么在wakeLock.acquire(X)中应该是多少秒;在广播接收器中?3 秒太短而且不起作用,10 分钟可能有点过头了……或者没有 PowerManager 有更好的解决方案吗?
android - 如何检测 Android 中的 PowerSaveMode 变化
我正在尝试检测电池的 PowerSaveMode 更改。我正在使用方法 pm.isPowerSaveMode()。我总是有一个错误的结果的问题。我正在尝试更新 statut 以启用,但结果总是错误的。我正在使用三种不同的设备,S8+(Android 9)、一加(Android 10)、索尼(Android 10)...
请问有什么解决办法吗?
android - 如何在新的 API(API 23 以上)中在所需时间打开 android 手机屏幕?
我正在开发一个新的应用程序,它需要在所需的时间点亮屏幕并在通知的同时播放声音或警报。这个概念在低于 23 的 API 中使用Wake_lock和其他一些不推荐使用的方法。但正如我提到的,由于一些称为DOZE模式的省电策略,它们中的大多数已在新 API 中被弃用。
有太多可用的应用程序以我询问的方式工作。但我没有为我的问题找到任何好的帮助或线索。
是否有解决上述问题的方法(在所需时间打开屏幕)?
android - 触发通知时唤醒设备
我在我的应用程序中设置了提醒,但是当通知出现时屏幕没有打开,也没有弹出。我只是收到通知栏的通知。设备应该唤醒(如果锁定)或显示通知弹出(如果解锁)
警报接收器类:
唤醒锁类:
提醒课: