android - 如何确定是否已经设置了 FLAG_KEEP_SCREEN_ON?
问题描述
我根据某些条件锁定屏幕,并在不再满足的条件后释放。有没有办法检查锁是否已经打开并且不再设置它?并且通过扩展,即使它已经打开,再次设置此锁是否有任何负面影响?
这是设置它的方法
`
final Activity activity = themedContext.getCurrentActivity();
if (activity != null) {
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
activity.getWindow().addFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
});
}
`
这是一种将其设置为关闭的方法:`
final Activity activity = themedContext.getCurrentActivity();
if (activity != null) {
Log.d("onVideoSizeChanged ", "screenOnLockRelease");
activity.runOnUiThread(new Runnable() {
@Override
public void run() {
activity.getWindow().clearFlags(WindowManager.LayoutParams.FLAG_KEEP_SCREEN_ON);
}
});
}
`themedContext - 只是应用上下文
我发现的唯一相关帖子:如何检测 FLAG_KEEP_SCREEN_ON 是否仅在 Activity 内设置?
但是当我检查属性时:
WindowManager.LayoutParams attributes = getAttributes();
我似乎无法从中获取标志。我对JAVA还不是很精通,所以请明确回答。谢谢转发
解决方案
推荐阅读
- stata - 循环遍历名称中具有相同前缀的许多变量
- python - Pandas:TypeError:列表索引必须是整数或切片,而不是 DataFrame
- pagination - 使用 Azure 数据工厂从 HubSpot REST api 获取数据 - 所有联系人(分页)
- python - 如何获取和解码发往特定端口的消息
- sql-server - 用户“域\用户”登录失败。原因:试图将 NT 帐户名用于 SQL Server 身份验证。[客户:
] - java - 用指数符号Java解析复数
- pandas-groupby - 按日期计数的 Pandas 列
- php - 无法在PHP中移动文件夹中的文件
- git - tilda 和 caret 符号对 git 中的 HEAD 有什么作用?
- tfs - 如何检索 Azure DevOps Wiki 页面列表以进行编辑?