GuidesAPI GuideChangelog
Log In
Guides

2. 플레이어 실행하기

라이브 ID 하나로 플레이어를 띄웁니다. iOS 는 앱이 준 UIViewController 안에 자식으로 들어가므로 컨테이너 화면을 먼저 준비합니다.

2. 플레이어 실행하기 — 소스라이브 플레이어 iOS SDK
예상 소요 시간: 5~10분
📋 사전 조건: 1. SDK 설치하기 — 초기화 완료
컨테이너 화면에 띄워보기

iOS SDK 는 새 화면을 띄우지 않습니다. 앱이 준 UIViewController 안에 자식으로 들어갑니다.
그래서 플레이어를 담을 화면 하나가 먼저 필요합니다.

Swift
import SauceSDK

class LivePlayerVC: UIViewController {

    private var player: SauceLivePlayerClient?

    override func viewDidLoad() {
        super.viewDidLoad()

        let player = SauceLivePlayerClient.getInstance(
            broadcastID: "라이브 ID",
            token: nil,          // 게스트 모드 — 회원 연동은 다음 단계에서
            viewController: self
        )

        // ⚠️ 콜백을 먼저 등록한 뒤 startPlayer() 를 호출합니다
        player.onClose = { [weak self] in
            self?.dismiss(animated: true)
        }

        player.startPlayer()
        self.player = player
    }
}
⚠️ 콜백을 startPlayer() 보다 먼저 등록하세요 — 순서가 바뀌면 실행 직후에 발생한 이벤트를 놓칠 수 있습니다.
⚠️ 오류를 콜백으로 받을 수 없습니다. onError 프로퍼티가 있지만 현재 호출되지 않습니다. 오류는 Xcode 콘솔 로그와 시청자 화면 표시로 확인해야 합니다. → Error codes
💡 인스턴스를 프로퍼티로 보관하세요 — 지역 변수에만 두면 화면이 유지되는 동안 해제될 수 있습니다. closePlayer() 로 직접 닫을 때도 이 참조가 필요합니다.
실행 순서

호출 두 개로 끝나지만, 내부에서는 아래 순서로 진행됩니다.
화면이 뜨지 않을 때 어디까지 진행됐는지 가늠하는 데 도움이 됩니다.

  • 1
    getInstanceSDK 초기화 상태와 라이브 사용 권한을 확인합니다. 초기화가 안 됐거나 라이브 기능이 비활성이면 여기서 중단됩니다.
  • 2
    startPlayer 가 플레이어를 컨테이너의 자식 화면으로 추가하고 컨테이너 크기를 그대로 채웁니다.
  • 3
    토큰을 확인합니다. nil 이면 게스트 계정을 자동 발급받습니다.
  • 4
    방송 정보를 받아 영상·채팅·상품 목록을 구성합니다. 이 단계에서 실패하면 시청자 화면에 오류가 표시되고 콘솔에 로그가 남습니다.
닫기

시청자가 플레이어의 닫기 버튼을 누르면 onClose 가 호출됩니다.
화면을 내리는 것은 앱이 해야 합니다. SDK 는 자기 자신만 정리합니다.

상황설명
시청자가 닫기 버튼을 누름onClose 가 호출됩니다.
앱이 dismiss 또는 popViewController 로 화면을 내립니다
앱이 직접 닫아야 함player.closePlayer() 를 호출합니다.
플레이어가 정리되고 컨테이너에서 제거됩니다
💡 화면 전환 방식은 앱이 정합니다. 컨테이너를 모달로 띄울지, 내비게이션으로 밀어 넣을지, 탭 안에 둘지에 따라 닫는 방법도 달라집니다.
플레이어가 안 뜰 때

순서대로 확인하세요. 대부분 앞의 두 가지입니다.

증상확인할 것
화면이 비어 있다Xcode 콘솔에서 초기화 로그를 확인합니다. 활성화 키 인증이 실패했을 수 있습니다 → 확인 방법
방송이 없다고 나온다apiHost 를 확인합니다. .stage 로 두면 테스트 서버에 붙으므로 실제 방송은 보이지 않습니다
진행 중인 방송이 안 보인다라이브 ID 가 맞는지, 그 방송이 지금 송출 중인지 확인합니다
앱이 종료된다라이브 기능이 비활성인 활성화 키일 수 있습니다. SauceClient.isLiveEnabled() 로 확인하세요
라이브 ID 확인하기

라이브 ID 는 소스 어드민에서 확인합니다.
라이브를 편성한 뒤 라이브 송출 정보 확인에서 값을 복사해 broadcastId 에 그대로 전달하세요.

어드민 송출정보에서 라이브 ID 확인
▲ 어드민 분석 〉 라이브 〉 상세 〉 송출정보에서 라이브 ID를 확인·복사
📍 VOD 재생 — 종료된 방송을 다시 재생하려면 같은 broadcastId 자리에 VOD ID 를 전달합니다. 호출 방법은 동일합니다.


Did this page help you?
🏠 소스라이브 🎬 소스클립 🔗 소스링크 📢 소스애드
🧩 API 가이드
🆕 최근 업데이트
💬 도움이 더 필요하신가요?
메일로 문의 카카오톡 채널로 문의
담당자에게 문의하기

궁금한 점이나 불편했던 점을 남겨주시면 담당자가 확인 후 답변드릴게요.

가이드 챗봇 BETA
* AI를 활용해 답변해서 사실과 다를 수도 있어요. 더 궁금한 사항은 '담당자에게 문의하기'를 이용해주세요.
💡 궁금한 솔루션(예: 라이브, 링크 등)을 함께 적어주시면 더 정확한 답변을 받을 수 있어요.