티스토리 뷰

Swift/WWDC

[WWDC 20] Expand your SiriKit Media Intents to more platforms

내일은개발천재🎵 2022. 10. 13. 23:40

SiriKit Medea Platform

TVOS SiriKit Media Intents

  • 기존 HomePod에서 사용되던 것이 Apple TV에서 사용되게 되었음.
  • 다양한 자연어 쿼리를 추가할 수 있음
  • iOS 적용 방식과 동일합니다.(WWDC 19, SiriKit Media Intents 확인)

SiriKit Media 앱에서 자연어 명령을 처리하는 방법

  1. Intent Handler
  • SiriKit Media 요청을 처리하는 핵심 클래스
  • resolveMediaItems 메서드를 구현해주어야한다.
    • App에서 수신한 INPlayMediaIntent 개체를 평가하고 검색하여 구체적 미디어 항목으로 변환하는 곳이다.
    • 이후 handler가 호출되어 앱이 동작해 재생을 시작할 수 있게 된다.
    • tvOS의 차이점은 고객이 일반적으로 한 번에 하나의 응용 프로그램만 상호작용하기 때문에 foreground 앱 실행이 선호되는 상호작용일 가능성이 높다.
    • iOS는 background 실행이 선호되는 상호작용일 가능성이 더 높다.
    • handleInApp 대신 handle 함수에서 continuelInApp을 반환하여 제어한다.

플랫폼에서 siri에게 음악을 요청하는 더 쉬운 경험 제공 (대안)

  • WWDC 19예제 ControlAudio 사용
  1. SiriKit Media Alternatives UI
    • INMediaItemResolutionResult의 resolveMediaItem 메소드로 success()을 호출하고 있음
    • → 해당 메서드는 단일 미디어 항목 확인 결과를 반환함
    • successes와 resolvedMediaItems로 대체하면 됨.
    • ⇒ 대안 탭이 생성된다.

SiriKit Media에 새로 도입된 성능 개선 사항

  1. In app Intent handling
    • 모든 의도 처리 단계를 확장 프로그램이 아닌 앱으로 이동한다.→ 프로세스의 시작을 피할 수 있다. (앱을 launch하기만 하면 된다.)
    • → 백그라운드 오디오 세션을 시작하기 위해 인텐트 확장이나 앱을 시작할 필요가 없다.
    • 전체 앱을 시작하기 때문에 해결 단계에서 Siri의 응답시간이 길어질 수 있다.→ 시작 조건을 알고 있는 경우 (네트워크 요청 등) 확인을 시작하고 처리할 때 플레이어가 100% 초기화되도록 할 수 있다. (Intergrate Intents with yout app 프레젠테이션 참고)
    • → Intent 확장이 빠른 실행에 최적화된 작고 가벼운 프로세스이기때문에 동일한 응답을 얻으려면, 전체 앱 실행 환경을 조정해야한다.
    • 장단점을 잘 생각해서 선택하셈요

'Swift > WWDC' 카테고리의 다른 글

[WWDC 18] Introduction to siri Shortcuts  (0) 2022.10.13
공지사항
최근에 올라온 글
최근에 달린 댓글
Total
Today
Yesterday
링크
«   2025/01   »
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31
글 보관함