gpt4 book ai didi

ios - 如何使用Qt防止屏幕锁定ios

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:21:17 25 4
gpt4 key购买 nike

我想在 Qt for iOS 中开发一个包含 map 的应用程序。在使用过程中,手机的屏幕锁应该被禁用。但我找不到任何解决方案如何使用 Qt 防止 iOS 中的屏幕锁定。

如何做到这一点?

最佳答案

您必须使用 native iOS api。您可以在 Qt 应用程序中直接使用 clang 编译器编译 ObjC++ 代码。

因此您可以混合使用 .cpp.mm (ObjC++) 文件。 QtCreator 和 qmake 通过 OBJECTIVE_SOURCES 关键字支持这一点。

yourclass.mm 实现中:

    #import <Foundation/Foundation.h>
#import <UIKit/UIKit.h>

void YourClass::setTimerDisabled() {
[[UIApplication sharedApplication] setIdleTimerDisabled: YES]
}

你的class.h:

class YourClass
{
public:
void setTimerDisabled()
}

现在您可以从 Qt 应用程序的任何位置调用:

YourClass yc;
yc.setTimerDisbabled();

在您的项目文件 (.pro) 中,如果您只想在 iOS 上使用此文件:

ios {
OBJECTIVE_SOURCES += \
yourclass.mm \
}

如果您只想在单个平台上使用指定的代码,请在您的源文件和头文件中使用预处理器命令,如下所示:

#if defined(Q_OS_IOS)
// iOs stuff
#elsif defined(Q_OS_ANDROID)
//Android stuff ...
#else
//Other stuff ...
#endif

关于ios - 如何使用Qt防止屏幕锁定ios,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32775828/

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