Как вызвать вибрацию на Apple Watch OS 2?

Я некоторое время работал с Apple Watch OS 2, но мне не удалось вызвать вибрацию в автономном приложении Apple Watch в Swift, используя бета-версию Xcode версии 7.0 6 (7A192o).

Все туториалы по использованию вибрации на iPhone в Swift выглядят так:

 import AudioToolbox
 ...
 AudioServicesPlayAlertSound(SystemSoundID(kSystemSoundID_Vibrate))

Но я не могу импортировать библиотеку AudioToolbox.

Я получаю сообщение об ошибке:

Не удалось собрать модуль Objective-C «AudioToolbox».

Кто-нибудь уже нашел способ сделать это?


person Jiri    schedule 02.09.2015    source источник
comment
Что значит невозможно импортировать? Не хотите использовать (почему бы и нет)? Получаете ошибки при попытке (какие ошибки)?   -  person jonrsharpe    schedule 02.09.2015
comment
пишет Нет такого модуля AudioToolbox   -  person Jiri    schedule 02.09.2015
comment
Вероятно, это полезная информация для включения в вопрос. Вы изучили сообщение об ошибке?   -  person jonrsharpe    schedule 02.09.2015
comment
и если я перетащу его в проект, он скажет: Не удалось построить модуль Objective/C AudioToolbox   -  person Jiri    schedule 02.09.2015
comment
Опять же, добавьте эту информацию к вашему вопросу.   -  person jonrsharpe    schedule 02.09.2015


Ответы (6)


Вы можете генерировать тактильную и слуховую обратную связь, используя:

WKInterfaceDevice.currentDevice().playHaptic(.Click)

«Клик» — это один из «кейсов» (типов вибрации/звуковых сигналов), которые вы можете выбрать, см.:

enum WKHapticType : Int {
 

case Notification
 
case DirectionUp

case DirectionDown
 
case Success

case Failure
 
case Retry
 
case Start
 
case Stop
 
case Click

}

Это работает только на устройстве, а не в симуляторе.

person LucPts    schedule 03.09.2015

В Swift 3:

WKInterfaceDevice.current().play(.success)
person Zoltan    schedule 07.12.2016

Я не эксперт в WatchKit, но знаю, что с Watch OS 2 вы можете использовать:

WKInterfaceDevice().playHaptic(.Notification)

Функция playHaptic, вызываемая в экземпляре WKInterfaceDevice, задействует тактильный механизм Apple Watch.

Подробнее см. в документация Apple.

person Massimo Polimeni    schedule 02.09.2015

Функция:

WKInterfaceDevice().playHaptic(.Уведомление)

Здесь у вас есть: Документация

person Onvil    schedule 15.09.2015

Правильный формат

WKInterfaceDevice.currentDevice().playHaptic(.Notification)

Вы можете легко воспроизвести звук уведомления на часах

person Manish Gumbal    schedule 29.11.2015

WKInterfaceDevice.current().play(.failure) 

в Свифт 3

person Dylan Murphy    schedule 20.06.2017
comment
Как неопытный программист, я бы предпочел ответ, который сразу переходит к делу, а не ответ из 500 слов, объясняющий функции и другие вещи, о которых неопытный программист понятия не имеет. Вот мой ответ, и он лучше других, потому что я дохожу до сути. - person Dylan Murphy; 22.06.2017