如何判断QML应用被推送到后台和前台
发表时间:2020-10-19
发布人:葵宇科技
浏览次数:70
在这篇文┞仿中,我们来介绍若何断定一个QML应用被推到后台或前台。我们知道,在Ubuntu手机平台中,它是一个荡竽暌功用的操作体系。当一个应用被推到后台后,应用就被挂起,不克不及运行。我们有时须要这个标记来断定我们的应用什么时刻是在前台,什么时刻是在后台。
我们用Ubuntu SDK创建一个简单的QML应用:
import QtQuick 2.0 import Ubuntu.Components 1.1 /*! \brief MainView with a Label and Button elements. */ MainView { id: main // objectName for functional testing purposes (autopilot-qt5) objectName: "mainView" // Note! applicationName needs to match the "name" field of the click manifest applicationName: "com.ubuntu.developer.liu-xiao-guo.foregrounddetect" /* This property enables the application to change orientation when the device is rotated. The default is false. */ //automaticOrientation: true // Removes the old toolbar and enables new features of the new header. useDeprecatedToolbar: false width: units.gu(100) height: units.gu(75) Page { title: i18n.tr("ForegroundDetect") Connections { target: Qt.application onActiveChanged: { console.log("Qt.application.active: " + Qt.application.active); } } } }
在这里,我们应用Qt.application这个变量的"active"属性来断定一个应用是否被推到后台或前台。我们运行应用结不雅如下:
[img]http://img.blog.csdn.net/20150105110140359?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQvVWJ1bnR1VG91Y2g=/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center
当我们在手机上把应用推到后台时,就会显示false;当我们把应用推到前台时,就会显示true。
全部应用的源码在:bzr branch lp:~liu-xiao-guo/debiantrial/foregrounddetect