Swift

IOS_ 진동 울리기

JunsC 2024. 3. 7. 00:04
728x90

IOS 에서 진동을 울려야 했다. 일반적인 시스템 진동으로는 한계가 있어서 커스텀하는 방향으로 나아가야 했는데 

 

extension UIDevice {

  

  static func vibrate(_ status: String){

    switch status {

    case "Peek":

      AudioServicesPlaySystemSound(1519)

    case "Pop":

      AudioServicesPlaySystemSound(1520)

    case "Nope":

      AudioServicesPlaySystemSound(1521)

    case "cancelld":

      AudioServicesPlaySystemSound(1521)

    case "tryAgain":

      AudioServicesPlaySystemSound(1102)

    case "failed":

      AudioServicesPlaySystemSound(1107)

    case "normal":

      AudioServicesPlaySystemSound(kSystemSoundID_Vibrate)

    default:

      AudioServicesPlaySystemSound(1521)

    }

    

  }

}

이걸 발견했다. 하지만 이것도 한계를 느끼던 도중 좋은 사이트를 알아냈다.

 

https://eeyatho.tistory.com/200

 

Swift ) HapticEngine 진동. 원하는 패턴. 무한반복 - EEYatHo iOS

CHHapticEngine iOS 에서 제공하는 CHHapticEngine 을 이용하여 다양한 진동을 구현할 수 있다. 보다 자세한 설명을 원한다면 공식 링크에서 확인하기. CHHapticEngine 링크 큰 개념은, HapticEngine 에 진동 Pattern

eeyatho.tistory.com

 

이 사이트에서 제공하는 코드를 참고해서 다행이도 원하던 진동을 얻을 수 있었다.

 

 

 

햅틱을 적용한 앱들이 있는데 너무 무분별하게 적용하면 사용경험에 불편함을 느낄 수 있어 최소 필요부분에 적용시켜야할 듯 하다.