Добрый день. Подскажите, как сделать вибрацию с определенной длительностью? Как вызвать стандартные вибрационные сигналы, я знаю. Методы типа: AudioServicesPlaySystemSound(kSystemSoundID_Vibrate) не подходят. Можно ли сделать свои длительности вибрации?
Помогите разобраться с вибрацией
Можно еще так сделать
@available(iOS 10.0, *)
DispatchQueue.main.asyncAfter(deadline: .now() + 0.2) {
for _ in 0...2000 {
let generator = UIImpactFeedbackGenerator(style: .soft)
generator.impactOccurred()
}
}
Если делаете под iOS 13, то можете поиграться с CoreHaptics, там можно реализовать различные паттерны
Благодарю за помощь, но это все равно не то, вибрация идет не постоянная, а пульсирующая. А очень нужна постоянная. CoreHaptics тоже не подходит, так как он работает только с 8-го iPhone.
Ведь в настройках можно же самому вибрацию сделать, вот интересует именно вот это. Как это реализовано. Нужно чтобы вибрации в приложении были цельными.
Посмотрите это
https://www.hackingwithswift.com/example-code/core-haptics/how-to-play-custom-vibrations-using-core-haptics
Это очень интересное решение, но оно не работает на iPhone 7 и ниже. А в настройках вибрацию можно в них настраивать.
Сочувствую. Придется вам отказываться от этой затеи скорее всего.
На разных версиях iOS использовались разные API для работы с вибрацией, старые API уже deprecated и Apple с ними не пропускает в стор, некоторые API приватные, что так же не пустит вас в стор. Если для личного пользования, можно попробовать через jailbreak.
Вообще этот функционал у Apple числится как требовательный к батарее, поэтому Apple такое не любит когда используют.