에러 대응

재생/라이선스/DRM 오류는 플레이어 위에 i18n 오버레이로 표시됩니다. 컨트롤러 패턴에서는 lastError / licenseError 를 관찰해 직접 대응할 수 있습니다.

에러 코드

코드의미
E0001access_key 무효 / 비결제
E0002권한 없음
E0003인증 / 네트워크
E0005라이선스 무효
E0006월 무료 사용량 초과
E0007미지원 포맷
E0010DASH 미지원 (iOS)
E0011DRM 토큰 오류
E0012라이선스 서버 통신 실패
E0013FairPlay 인증서 검증 실패
E0014화면 캡처 / 녹화 감지
E0017Standard 플랜 필요

에러 관찰

컨트롤러의 @Published 에러 상태를 관찰하거나 Combine events 퍼블리셔로 error 이벤트를 구독합니다.

// @Published 상태 관찰
player.lastError        // PlayerError?
player.licenseError     // VPELicenseError?
player.isLicenseValidated  // Bool

// Combine 이벤트 구독
player.events
    .sink { event in
        if event.type == .error {
            print("재생 오류:", event.data ?? [:])
        }
    }
    .store(in: &cancellables)

흔한 실수

  • DASH .mpd URL 사용 → E0010. HLS .m3u8 또는 FairPlay HLS src 로 교체.
  • accessKey 누락 → E0001 재생 차단.
  • FairPlay 를 시뮬레이터에서 테스트 → 실기기에서만 복호화 가능.
  • 토큰/서명 만료(E0011~E0013) → 재생 직전 백엔드에서 최신 옵션을 수신해 적용.
iOS SDKBeta