Есть у меня такая проверка сенсоров:
bool DataFromLocalSensors::isSensorWork(const QString &name, QSensor *sensor)
{
if(!sensor) {
qWarning() << "Sensor " << name << " not found...";
return false;
}
else if (sensor->isBusy()) {
qWarning() << "Sensor " << name << " is busy...";
return false;
}
else if(!sensor->isConnectedToBackend()) {
qWarning() << "Sensor " << name << " can't connected to backend...";
return false;
}
else if(!sensor->isActive()) {
qWarning() << "Sensor " << name << " not active...";
return false;
}
return true;
}
Я пытаюсь скармливать ей следующие сенсоры:
QRotationSensor *rotationSensor;
QCompass *compass;
И у сенсора вращения, и у сенсора компаса проверка прерывается на isConnectedToBackend() или, если проверку коннекта к бэкенду закомментировать, прерывается на isActive().
Зато на Huawei Honor 6 и на Huawei 4c pro этот код работает, сенсоры нормально выдают значения.
Я искал в интернете, но нигде не нашел подробных характеристик планшета Samsung GalaxyTab 4. Но как-то не верится, что в нем нет сенсора вращения. Он должен быть, ведь в Asphalt можно играть с помощью наклона. Компас под вопросом, но тоже странно что он не определяется.
Мне нужно понять: это баг Qt? Особенность Samsung? Как достучаться до сенсоров?