如何在Qt Android应用程序上禁用屏幕保护程序
How to disable screensaver on Qt Android App
我在Android上使用Qt,我想禁用屏幕关闭/屏幕保护程序打开。
我没有使用QtQuick/QML,只有C++。Qt版本是5.8
编辑:我忘了提到我使用Qt Creator。
实际来源
您需要将"QT += androidextras"添加到 .pro 文件中
#include <QtAndroidExtras/QAndroidJniEnvironment>
#include <QtAndroidExtras/QtAndroidExtras>
QAndroidJniObject activity = QAndroidJniObject::callStaticObjectMethod("org/qtproject/qt5/android/QtNative", "activity", "()Landroid/app/Activity;");
if (activity.isValid()) {
QAndroidJniObject window = activity.callObjectMethod("getWindow", "()Landroid/view/Window;");
if (window.isValid()) {
const int FLAG_KEEP_SCREEN_ON = 128;
window.callMethod<void>("addFlags", "(I)V", FLAG_KEEP_SCREEN_ON);
}
}
//Clear any possible pending exceptions.
QAndroidJniEnvironment env;
if (env->ExceptionCheck()) {
env->ExceptionClear();
}
相关文章:
- 如何在GTK程序运行时禁用屏幕保护程序/电源管理/屏幕消隐
- cout 在我的程序上无法正常工作,有人可以帮助我吗?
- 将源文件扩展名从 .m 更改为 .mm 在屏幕保护程序项目的 Xcode 9.3 中失败
- Qt将应用程序与屏幕上的左上角对齐
- 如何在Qt Android应用程序上禁用屏幕保护程序
- 如何在预览窗口关闭后完成 SDL 屏幕保护程序应用程序
- C++使用Qt库的应用程序在屏幕保护程序启动时停止工作
- 当屏幕保护程序在Linux下启动或停止时,是否可以通知通知
- 要在Windows上读取/设置用户屏幕保护程序,是否需要使用系统注册表或SystemParametersInfo API
- 屏幕保护程序应用程序在对话框关闭后未关闭
- 如何创建桌面图标/按钮来启动用户Windows屏幕保护程序,并设置选项
- Ncurses和C++屏幕保护程序
- 问如何正确地做一个屏幕保护程序的功能窗口C++
- 如何判断屏幕保护程序是否在Qt (C/ c++)程序中运行?Windows (MS)
- 无法捕获屏幕保护程序事件
- 捕捉屏幕保护程序事件
- Win32屏幕保护程序多显示器与主显示器不是最左边
- 如何以编程方式防止linux计算机从睡眠或打开屏幕保护程序
- 在Windows 7上监视屏幕保护程序活动失败
- 如何知道你的电脑在屏幕保护程序或显示器/屏幕关闭多少时间