View in English

  • Apple Developer
    • 시작하기

    시작하기 탐색

    • 개요
    • 알아보기
    • Apple Developer Program

    알림 받기

    • 최신 뉴스
    • Hello Developer
    • 플랫폼

    플랫폼 탐색

    • Apple 플랫폼
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    피처링

    • 디자인
    • 배포
    • 게임
    • 액세서리
    • 웹
    • 홈
    • CarPlay
    • 기술

    기술 탐색

    • 개요
    • Xcode
    • Swift
    • SwiftUI

    피처링

    • 손쉬운 사용
    • 앱 인텐트
    • Apple Intelligence
    • 게임
    • 머신 러닝 및 AI
    • 보안
    • Xcode Cloud
    • 커뮤니티

    커뮤니티 탐색

    • 개요
    • Apple과의 만남 이벤트
    • 커뮤니티 주도 이벤트
    • 개발자 포럼
    • 오픈 소스

    피처링

    • WWDC
    • Swift Student Challenge
    • 개발자 이야기
    • App Store 어워드
    • Apple 디자인 어워드
    • 문서

    문서 탐색

    • 문서 라이브러리
    • 기술 개요
    • 샘플 코드
    • 휴먼 인터페이스 가이드라인
    • 비디오

    릴리즈 노트

    • 피처링 업데이트
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • 다운로드

    다운로드 탐색

    • 모든 다운로드
    • 운영 체제
    • 애플리케이션
    • 디자인 리소스

    피처링

    • Xcode
    • TestFlight
    • 서체
    • SF Symbols
    • Icon Composer
    • 지원

    지원 탐색

    • 개요
    • 도움말
    • 개발자 포럼
    • 피드백 지원
    • 문의하기

    피처링

    • 계정 도움말
    • 앱 심사 지침
    • App Store Connect 도움말
    • 새로 추가될 요구 사항
    • 계약 및 지침
    • 시스템 상태
  • 빠른 링크

    • 이벤트
    • 뉴스
    • 포럼
    • 샘플 코드
    • 비디오
 

비디오

메뉴 열기 메뉴 닫기
  • 컬렉션
  • 전체 비디오
  • 소개

더 많은 비디오

  • 소개
  • 요약
  • 코드
  • 앱 스키마로 지능형 Siri 경험 빌드하기

    앱 인텐트를 사용하여 앱 콘텐츠와 동작을 Siri에 연동하세요. 앱 엔티티를 사용하여 데이터를 모델링하고, 앱 스키마를 도입해 강력한 시스템 동작을 구현하며, Apple Intelligence로 구동되는 자연어 상호작용을 지원하세요. 시맨틱 검색을 활성화하고, 다양한 앱에 걸쳐 작업을 수행하며, 화면 내용 인지와 콘텐츠 전송을 사용하여 상황에 맞는 경험을 선사하는 방법을 살펴보세요. 빠르고 신뢰할 수 있는 Siri 경험을 빌드하기 위한 모범 사례와 테스트 도구를 확인하세요.

    챕터

    • 0:00 - Introduction
    • 1:06 - What's new in Siri
    • 4:06 - Contributing content with App Entities
    • 6:21 - Entity resolution and IndexedEntity
    • 9:49 - Making actions available
    • 12:03 - Adopting a schema domain in UnicornChat
    • 15:39 - Moving content across apps
    • 16:00 - Working across apps: onscreen awareness
    • 21:09 - Best practices
    • 24:18 - Testing your integration
    • 26:21 - Next steps

    리소스

    • Integrating your messaging app with Apple Intelligence
    • Donating your app’s data and actions to the system
    • Making app entities available in Spotlight
    • Making actions and content discoverable by Apple Intelligence
    • Providing contextual cues to Apple Intelligence and Siri
    • Apple Intelligence and Siri AI
    • Messages
    • App schema domains
      • HD 비디오
      • SD 비디오

    관련 비디오

    WWDC26

    • 코딩 실습: Siri가 앱을 사용할 수 있도록 설정하기
    • Siri 및 Apple Intelligence를 위한 고급 앱 인텐트 기능 살펴보기
  • 비디오 검색…
    • 7:59 - Contributing message content to Apple Intelligence

      // Contributing message content to Apple Intelligence
        
        @AppEntity(schema: .messages.message)
        struct MessageEntity: IndexedEntity {
      
            // The text content of the message
            @Property(indexingKey: \.textContent)
            var body: AttributedString?
        }
    • 8:36 - An interface that locates entities using arbitrary string input

      // An interface that locates entities using arbitrary string input
      
        struct ContactQuery: EntityStringQuery {
            func entities(matching string: String) async throws -> [ContactEntity] {
                let predicate = #Predicate<Person> { person in
                    person.name.localizedStandardContains(string)
                }
                let descriptor = FetchDescriptor<Person>(predicate: predicate)
                let matches = try modelContext.fetch(descriptor)
                return matches.map(\.entity)
            }
        }
    • 17:19 - Working across apps - View annotations

      // Working across apps - View annotations
        
        List {
            ForEach(messages) { message in
                MessageRow(message: message)
                    .appEntityIdentifier(
                        EntityIdentifier(
                            for: MessageEntity.self,
                            identifier: message.id
                        )
                    )
            }
        }
    • 18:18 - Working across apps - Exporting content to another app

      // Working across apps - Exporting content to another app
        
        extension ContactEntity: Transferable {
      
            static var transferRepresentation: some TransferRepresentation {
                IntentValueRepresentation(
                    exporting: \.person
                )
            }
        }
    • 19:21 - Working across apps - IntentValueQuery

      // Working across apps - IntentValueQuery
      
        struct ContactEntityQuery: IntentValueQuery {
      
            func values(for input: [IntentPerson]) async throws -> [ContactEntity] {
                let names = input.map(\.displayName)
                let descriptor = FetchDescriptor<Contact>()
                let contacts = try model.mainContext.fetch(descriptor)
                let matches = contacts.filter { contact in
                    names.contains(where: { name in
                        contact.name.localizedStandardContains(name)
                    })
                }
                return matches.map(\.entity)
            }
        }
    • 20:00 - Working across apps - IntentValueRepresentation

      // Working across apps - IntentValueRepresentation
      
        extension ContactEntity: Transferable {
      
            static var transferRepresentation: some TransferRepresentation {
                IntentValueRepresentation(exporting: \.person, importing: { intentPerson in                    
                    let contact = Contact(importing: intentPerson)
                    ContactManager.shared.contacts.append(contact)
                    return contact.entity
                })
            }
        }
    • 0:00 - Introduction
    • How App Intents bring your app to Siri, made more capable, contextual, and personal by Apple Intelligence in the 27 releases. Previews the agenda: what's new, contributing content, making actions available, working across apps, and best practices.

    • 1:06 - What's new in Siri
    • Siri gains three capabilities built on App Intents: accessing your app's entities, taking action through your intents, and understanding onscreen context. Introduces the UnicornChat sample app used throughout the session.

    • 4:06 - Contributing content with App Entities
    • Model your app's content as App Entities (what a thing is, how it's identified, and which properties matter), then conform them to an App Schema so Siri understands the category of content.

    • 6:21 - Entity resolution and IndexedEntity
    • How Siri resolves spoken references to real entities. Adopt IndexedEntity for semantic search and content Q&A over indexed content, using indexingKey to mark searchable properties, or EntityStringQuery when data can't be indexed ahead of time.

    • 9:49 - Making actions available
    • App Intents expose actions across Shortcuts, Spotlight, and Widgets. Conforming intents to App Schemas, and grouping them into App Schema domains, makes those actions executable by Siri through natural language.

    • 12:03 - Adopting a schema domain in UnicornChat
    • End-to-end walkthrough of adopting the Messages domain's sendMessage schema: mapping schema parameters onto UnicornChat's messaging flow and returning the sent message as an entity, so Siri can send messages without opening the app.

    • 15:39 - Moving content across apps
    • Export entities with Transferable and IntentValueRepresentation so other apps can act on them. On import, use IntentValueQuery to match existing content or IntentValueRepresentation(importing:) to create something new.

    • 16:00 - Working across apps: onscreen awareness
    • Requests that span apps rely on onscreen awareness. Connect views to App Entities, via NSUserActivity for a single primary item or view annotations for multiple visible items, so Siri can resolve references like "this" and "that."

    • 21:09 - Best practices
    • Design for complete Siri conversations by adopting full schema sets. Xcode surfaces missing related schemas (for example draftMessage alongside sendMessage) at build time with Fix-Its.

    • 24:18 - Testing your integration
    • Validate progressively: App Intents Testing for business logic in isolation, then the Shortcuts app for intent shape, Spotlight for content indexing, and finally Siri for the full end-to-end experience.

    • 26:21 - Next steps
    • Model and index entities, adopt the App Schema domains matching your app, enable content transfer with Transferable, and test early with Shortcuts, Spotlight, and Siri.

Developer Footer

  • 비디오
  • WWDC26
  • 앱 스키마로 지능형 Siri 경험 빌드하기
  • 메뉴 열기 메뉴 닫기
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    메뉴 열기 메뉴 닫기
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    메뉴 열기 메뉴 닫기
    • 손쉬운 사용
    • 액세서리
    • Apple Intelligence
    • 앱 확장 프로그램
    • App Store
    • 오디오 및 비디오(영문)
    • 증강 현실
    • 디자인
    • 배포
    • 교육
    • 서체(영문)
    • 게임
    • 건강 및 피트니스
    • 앱 내 구입
    • 현지화
    • 지도 및 위치
    • 머신 러닝 및 AI
    • 오픈 소스(영문)
    • 보안
    • Safari 및 웹(영문)
    메뉴 열기 메뉴 닫기
    • 문서(영문)
    • 튜토리얼
    • 다운로드
    • 포럼(영문)
    • 비디오
    메뉴 열기 메뉴 닫기
    • 지원 문서
    • 문의하기
    • 버그 보고
    • 시스템 상태(영문)
    메뉴 열기 메뉴 닫기
    • Apple Developer
    • App Store Connect
    • 인증서, 식별자 및 프로파일(영문)
    • 피드백 지원
    메뉴 열기 메뉴 닫기
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(영문)
    • Mini Apps Partner Program
    • News Partner Program(영문)
    • Video Partner Program(영문)
    • Security Bounty Program(영문)
    • Security Research Device Program(영문)
    메뉴 열기 메뉴 닫기
    • Apple과의 만남
    • Apple Developer Center
    • App Store 어워드(영문)
    • Apple 디자인 어워드
    • Apple Developer Academy(영문)
    • WWDC
    최신 뉴스 읽기.
    Apple Developer 앱 받기.
    Copyright © 2026 Apple Inc. 모든 권리 보유.
    약관 개인정보 처리방침 계약 및 지침