Определить близость пользователя с экрана

Я работаю над приложением BB10, которое должно быть в состоянии отключить экран когда пользователь держит телефон лицом к лицу во время разговора.

Как я могу узнать, когда пользователь подносит телефон к лицу?

5

Решение

Чтобы определить близость пользователя от телефона, вы можете использовать QProximitySensor.

Чтобы использовать это, вам нужно добавить эти строки в файл .pro вашего проекта:

CONFIG += mobility
MOBILITY += sensors

Добавьте необходимые файлы в файлы .cpp и .h:

#include <QtSensors/QProximitySensor>
using QtMobility::QProximitySensor;

#include <QtSensors/QProximityReading>
using QtMobility::QProximityReading;

Определите датчик приближения в файле .h. Создайте и уничтожьте датчик в ваших функциях конструктора и деструктора.

Когда вызов начнется, подключите ваш датчик readingChanged Функция к тому, который вы собираетесь обрабатывать чтение, и активировать его:

connect(proximitySensor, SIGNAL(readingChanged()), this, SLOT(checkReading()));
proximitySensor->setActive(true);

Когда вызов заканчивается, отключите датчик:

proximitySensor->setActive(false);

Наконец, используйте чтение close функция, чтобы сказать, когда устройство близко к лицу пользователя. Обратите внимание, что расстояние, определенное как «близко», может отличаться для разных устройств.

bool isClose = proximitySensor->reading()->close();

Кроме того, если вы не хотите реагировать на изменения в чтении, вы можете пропустить подключение readingChanged сигнал и использовать close функционировать независимо.

3

Другие решения


По вопросам рекламы [email protected]