Главная » iPhone » Вибрирование iPhone

0

iPhone имеет встроенный вибрирующий мотор для беззвучного уведомления пользователя о новых событиях. Он управляется платформой МеССА, являющейся частной платформой С++, используемой для низкоуровневого взаимодействия с различными устройствами, включая аудио, Bluetooth и др. Дэниель Пиблс (Daniel Peebles) написал пример низкоуровневой вибрации, который может быть обернут в приложение или вызван как независимый бинарный код.

Чтобы iPhone завибрировал, создайте экземпляр класса С++ МеССА vibrator. Вот прототип этого класса:

class MeCCA_Vibrator { public:

int getDurationMinMax(unsigned int&, unsigned int&);

int activate(unsigned short);

int activate(unsigned int, unsigned short);

int activate(unsigned int, unsigned int, unsigned short); int deactivate( );

};

Чтобы воспользоваться этим классом, сначала создайте новый экземпляр

MeCCA_Vibrator:

MeCCA_Vibrator *v = new MeCCA_Vibrator;

Затем для управления вибрацией могут использоваться методы activate и

deactivate объекта вибрации:

v->activate (1); usleep DURATION) ;

v->deactivate { );

При вызове функции usleep() укажите длительность в микросекундах, в течение которой должен работать вибратор.

Чтобы начать использовать объект MeCCA_vibrator. ваше приложение должно быть подключено к платформе МеССА. МеССА можно подключить к вашему приложению с помощью пакета инструментов, добавив для этого аргумент -framework МеССА к аргументам компилятора, описанным в главе 2:

$ arm-apple-darwin9-gcc -о MyApp MyApp.m -lobjc -framework CoreFoundation -framework Foundation "Ъ -framework МеССА

Чтобы добавить этот параметр в пример таке-файла из предыдущей главы, добавьте платформу МеССА в раздел флагов компоновщика, чтобы данная библиотека подключилась:

LDFLAGS = -lobjc Ь

-framework CoreFoundation Ъ -framework Foundation ^ -framework МеССА

Источник: Здзиарски Дж. iPhone. Разработка приложений с открытым кодом: Пер„с англ. — 2-е изд., перераб. и доп. — СПб.: БХВ-Петербург, 2009. — 368 е.: ил.

По теме:

  • Комментарии