WWDC 2025 - 아이 안전 강화를 위한 PermissionKit 도입
카테고리
프로그래밍/소프트웨어 개발
서브카테고리
개발 툴
대상자
- iOS 앱 개발자 (모바일 통신 앱, 멀티세대 지원 앱, 부모 감시 기능이 필요한 앱)
- 난이도: 중급~고급 (iOS 프레임워크 및 API 통합 경험 필요)
핵심 요약
- PermissionKit은 iOS 26에서 도입된 아이 안전 강화 프레임워크로, 부모 승인 요청 기능을 Messages 앱과 통합하여 제공
- knownHandles(in:) API를 통해 알려진 연락처만 콘텐츠 노출 가능, 미충족 시 기본 응답 반환
- PermissionQuestion 객체를 통해 메시지, 전화, 영상 통화 등 특정 액션에 대한 부모 승인 흐름 구현 가능
섹션별 세부 요약
1. 프레임워크 개요
- PermissionKit은 iOS 26에서 출시된 아이 안전 기능 강화를 위한 핵심 프레임워크
- Family Sharing 그룹 가입 및 Communication Limits 활성화가 필수 전제 조건
- Age Detection 시스템을 기반으로 유저가 아이인지 확인 후 API 사용
- Fallback Handling 기능으로 전제 조건 미충족 시 기본 응답 제공
2. 콘텐츠 노출 제어
- 알려지지 않은 발신자의 메시지 미리보기, 프로필 사진, 사용자 생성 콘텐츠 등 민감 정보 숨기기
knownHandles(in:)
API를 통해 모든 참여자 연락처 확인 후 콘텐츠 노출 결정- 기본값은 아이 보호를 위해 콘텐츠 숨기기
3. API 구현 예시
import PermissionKit
let knownHandles = await CommunicationLimits.current.knownHandles(in: conversation.participants)
if knownHandles.isSuperset(of: conversation.participants) {
// 콘텐츠 노출
} else {
// 콘텐츠 숨기기
}
- PermissionQuestion 객체 생성 시 사용자 정보(이름, 이미지, 핸들), 지원 액션(메시지, 전화, 영상) 포함
- SwiftUI 및 UIKit/AppKit 기반 UI 구성 요소 추가
4. 사용자 경험 흐름
- 아이가 퍼미션 버튼 클릭 → 시스템이 승인 확인 알림 표시 → "메시지로 요청" 또는 "직접 승인" 선택
- 메시지 창 자동 생성 후 추가 설명 입력 가능
5. 응답 처리 전략
- 부모 승인 시 앱이 백그라운드에서 실행되며 AsyncSequence로 응답 처리
- UI 및 로컬 캐시 즉시 업데이트, 서버와 동기화, 아이에게 알림 전송
- 메시지 버블에서 빠른 거부 옵션 제공, 상세 리뷰 시 전체 맥락 및 메타데이터 확인 가능
결론
- PermissionKit을 기반으로 웹 기반 경험 확장 가능, 서버와의 동기화를 통해 플랫폼 일관성 유지
- 비디오 통화의 부적절한 콘텐츠 자동 차단 기능과 결합하여 종합적 보호 제공
- Implementation Checklist에서 나이 감지 시스템 구현, UI 심층 감시, AsyncSequence 구독 관리 등 핵심 사항을 반드시 검토해야 함