체험 라이센스
Bundle ID 기준으로 7일 동안 즉시 발급되며, 구매 전 적합성 검토를 위한 기본 수단입니다.
Bundle ID 기준으로 7일 동안 즉시 발급되며, 구매 전 적합성 검토를 위한 기본 수단입니다.
결제가 끝나면 운영용으로 발급됩니다. 상용 흐름도 같은 제품을 기준으로 하며, 구매 전 검증이 전제됩니다.
빌드 타깃, 앱 설정, 발급된 라이센스가 모두 같은 Bundle ID를 가리키는지 가장 먼저 확인합니다. → SVLicenseErrorBundleIdentifierMismatch (1002)
체험판이 만료됐거나 현재 시점에 유효하지 않은 라이센스를 사용하고 있지 않은지 확인합니다. → SVLicenseErrorExpired (1003) / SVLicenseErrorNotYetValid (1004)
라이센스를 새로 받고, 올바른 앱 타깃인지 확인한 뒤, 클린 빌드 기준으로 다시 검증합니다. 보호가 된 것처럼 넘어가면 안 됩니다.
sv_enableProtectionWithLicenseJSON:configuration:error:가 실패할 때 NSError 도메인에서 반환되는 에러 코드입니다.
SDK가 라이센스를 순서대로 검증하는 단계입니다. 각 단계 실패 시 해당 에러 코드가 반환됩니다.
라이센스 JSON 역직렬화 및 필수 필드 추출. → SVLicenseErrorMalformedPayload (1000) / SVLicenseErrorMissingRequiredField (1001)
라이센스 bundle_id가 호스트 앱과 일치해야 함. → SVLicenseErrorBundleIdentifierMismatch (1002)
아직 활성화되지 않은 라이센스를 거부. → SVLicenseErrorNotYetValid (1004)
유효 기간이 지난 라이센스를 거부. → SVLicenseErrorExpired (1003)
정책에 따라 취소 증명이 필요한지 결정. → SVLicenseErrorRevoked (1006) / SVLicenseErrorRevocationCheckRequired (1007)
알고리즘, 키 ID, 서명 데이터가 모두 있어야 함. → SVLicenseErrorMissingRequiredField (1001)
내장 공개 키로 ECDSA P-256 서명 검증. → SVLicenseErrorInvalidSignature (1008) / SVLicenseErrorUnknownKeyIdentifier (1009)
모든 검사 통과 — 뷰에 보호를 적용할 수 있습니다.
이 문서만 따로 보지 말고, 도입 흐름에 맞는 인접 문서를 함께 확인하는 편이 좋습니다.