Qt Haptic Обратная связь по android

Я пытаюсь заставить свое устройство рухнуть, но у меня очень мало удачи. Моя среда - HTC Sensation Android 2.3.3 API 10. Использование Necessitas Qt Creater в качестве моей IDE.

Ничего не делает:

QFeedbackHapticsEffect::playThemeEffect( QFeedbackHapticsEffect::ThemeBasic );

Сбой приложения:

QFeedbackHapticsEffect rumble;

rumble.setAttackIntensity(0.0);
rumble.setAttackTime(250);
rumble.setIntensity(1.0);
rumble.setDuration(100);
rumble.setFadeTime(250);
rumble.setFadeIntensity(0.0);

rumble.start();

rumble.stop();

Я указал свой .pro файл со следующим

CONFIG += mobility
MOBILITY += feedback

и я использую QTM_USE_NAMESPACE с включенными заголовками.

Edit:

Я установил следующие разрешения:

android.permission.INTERNET
android.permission.WRITE_EXTERNAL_STORAGE
android.permission.VIBRATE

Однако я все еще получаю ошибку сегментации.

Ответ 2

Документация API для QFeedbackHapticsEffect предполагает, что duration должна быть больше attackTime + fadeTime. И, конечно, остановка сразу после ее запуска, вероятно, не то, что вы хотите, но, надеюсь, это не вызовет ошибку seg. Возвращает ли actuator() что-то полезное? В этом случае QFeedbackActuator::actuators() дает вам непустой список?

Ответ 3

У меня была такая же проблема, и я отправил сообщение об ошибке с более подробной информацией (все еще без ответа), чтобы http://groups.google.com/group/android-qt/browse_thread/thread/e1a4ad1c797b6694

Кажется, проблема в библиотеке Qt Mobility для Android, которая, вероятно, может быть легко исправлена ​​для тех, кто компилирует свою собственную библиотеку (я этого еще не делал).