유형별 기본 센서 결정
한 유형에 여러 센서가 존재할 수 있음
센서는 특정 유형에 대해 여러 개의 센서가 존재할 수 있도록 설계되었습니다. 그 이유는 무엇일까요? 다음 예를 살펴보겠습니다.
안드로이드 기기에는 가속도계가 내장되어 있습니다. 또한 블루투스 기능을 갖추고 있어 가속도계가 탑재된 게임 컨트롤러와 페어링할 수 있습니다. 게임을 개발하는 개발자에게 이 두 기기는 개념적으로 동일한 유형입니다.
유형별 기본 센서
특정 유형의 기본 센서가 무엇인지 알거나 확인할 필요가 없도록, 시스템은 해당 유형에 대한 기본 센서를 사용합니다. 대부분의 경우 이것이 앱 개발자가 원하는 방식입니다. 앱 개발자가 특정 센서를 선택하고자 한다면, 센서를 시작하기 전에 ` QSensor::setIdentifier()` 메서드를 호출하여 적절한 백엔드가 사용되도록 해야 합니다.
하지만 시스템 관점에서 볼 때, 어떤 센서를 기본값으로 지정할지 선택하는 것은 까다로운 문제입니다. 센서 라이브러리는 가장 먼저 등록된 식별자를 기본값으로 사용합니다. 즉, 센서 백엔드가 등록되는 순서가 중요하므로, 시스템은 대신 구성 파일을 통해 기본값을 결정할 수 있도록 허용합니다.
Sensors.conf
특정 유형에 대한 기본 센서를 결정하는 설정 파일은 Sensors.conf라고 합니다. 이 설정 파일은 QtProject 디렉터리 내 QStandardPaths::standardLocations(QStandardPaths::ConfigLocation)에 명시된 디렉터리에서 검색됩니다. 전체 파일 경로의 예는 다음과 같습니다:
/etc/xdg/QtProject/Sensors.conf가장 먼저 발견된 구성 파일이 사용됩니다.
이 설정 파일은 ini 파일의 표준 형식을 따릅니다. 설정 항목은 Default 그룹에 포함되며, 일반적인 형식은 다음과 같습니다:
type = identifier예시: Sensors.conf는 백엔드가 등록된 순서를 무시하고, 기본적으로 sensorfw 가속도계가 사용되도록 보장합니다.
[Default]
QAccelerometer=sensorfw.accelerometerSensors.conf에서 등록되지 않은 식별자를 지정하면, 시스템은 첫 번째로 등록된 식별자를 기본값으로 사용합니다.
동일한 유형에 대해 다른 백엔드가 등록된 경우, 일반 플러그인의 백엔드가 기본값이 되는 것을 방지하는 특수한 논리가 적용된다는 점에 유의하십시오. 이 논리에 따라 generic. 로 시작하는 백엔드 식별자는 해당 유형에 대해 다른 백엔드가 등록되지 않았거나 Sensors.conf 에 명시된 경우에만 기본값이 됩니다.
© 2026 The Qt Company Ltd. Documentation contributions included herein are the copyrights of their respective owners. The documentation provided herein is licensed under the terms of the GNU Free Documentation License version 1.3 as published by the Free Software Foundation. Qt and respective logos are trademarks of The Qt Company Ltd. in Finland and/or other countries worldwide. All other trademarks are property of their respective owners.