System Info
The project contains the usage examples of the API that provides information about the execution environment: the OS and the device.
The main purpose is to show not only what information can be obtained, but also which ways to get it are correct.
Build status:
Terms of Use and Participation
The source code of the project is provided under the license, which allows its use in third-party applications.
The contributor agreement documents the rights granted by contributors of the Open Mobile Platform.
Information about the contributors is specified in the AUTHORS file.
Code of conduct is a current set of rules of the Open Mobile Platform which informs you how we expect the members of the community will interact while contributing and communicating.
Project Structure
The project has a standard structure of an application based on C++ and QML for Aurora OS.
- ru.auroraos.SystemInfo.pro file describes the project structure for the qmake build system.
- icons directory contains the application icons for different screen resolutions.
-
qml directory contains the QML source code and the UI resources.
- cover directory contains the application cover implementations.
- components derectory contains the custom UI components.
- icons directory contains the additional custom UI icons.
- pages directory contains the application pages.
- js directory contains scripts for converting custom data types to strings.
- SystemInfo.qml file provides the application window implementation.
-
rpm directory contains the rpm-package build settings.
- ru.auroraos.SystemInfo.spec file is used by rpmbuild tool.
-
src directory contains the C++ source code.
- main.cpp file is the application entry point.
- translations directory contains the UI translation files.
- ru.auroraos.SystemInfo.desktop file defines the display and parameters for launching the application.
Compatibility
The project is compatible with all the current versions of the Aurora OS.
Screenshots
Examples
Hardware
This category of examples is dedicated to obtaining information about the device properties and components. The corresponding pages with the examples are located in the hardware directory.
QtSystemInfo allows to get general information about the device.
Preliminary preparations are required to use the library:
- Add
BuildRequires: pkgconfig(Qt5SystemInfo)to the .spec file. - Add
Qt5SystemInfoto thePKGCONFIGlist of the .pro file.
Device Info
This example shows how to use
QDeviceInfo
to get properties of the device and the OS build.
QDeviceInfo class is registered as DeviceInfo type for QML.
- DeviceInfoPage.qml is the example page.
Storage Info
This example shows how to use QStorageInfo
to get properties of the mounted volumes.
To access the QStorageInfo class,
you need include the library header file.
If the project does not use the QtSystemInfo library,
then it is sufficient to include the header file of the QStorageInfo class.
The problem is caused by two different interfaces of a class named QStorageInfo.
This project uses the Qt Core QStorageInfo class.
- StorageInfoPage.qml is the example page.
- storageinfomodel.h and storageinfomodel.cpp implement a model that provides the information about the mounted volumes.
Connections
This category of examples is dedicated to obtaining information about the device connections. The corresponding pages with examples are located in the connections directory.
Connman is an Internet connection manager that, among other things, allows you to get information about network connections, using DBus-service.
Network Status
This example shows what to do to get status of the network connections.
- NetworkManagerPage.qml is the example page.
