Shoplive iOS SDK

2800

Shoplive iOS SDK는 여러분의 앱을 사용하는 고객에게 쉽고 빠르게 라이브 방송을 제공할 수 있는 모바일 SDK입니다. Shoplive PIP(Picture-in-Picture), 네이티브 키보드 UI 등 스마트폰에서 원활한 모바일 경험을 가능하게 합니다.

296

특징

  • CocoaPods 또는 Swift Package Manager를 사용하여 설치할 수 있습니다.
  • Shoplive Player를 사용하여 Shoplive 방송을 재생할 수 있습니다.
  • 저화질/무음으로 설정한 Shoplive 방송을 영상 배너로 나타내어 사용자가 Shoplive 방송을 시청하도록 유도할 수 있습니다.
  • 사용자가 Shoplive 방송을 시청하면서 채팅에 참여하고 상품을 검색하도록 할 수 있습니다.
  • 앱 내 또는 홈 화면에서 Shoplive 방송을 PIP로 시작하고 전환할 수 있습니다.
  • 게스트로 채팅에 참여하고, 채팅에 참여한 사용자 정보를 실시간 전달받을 수 있습니다.
  • 인증 사용자로 채팅에 참여하고, 간편 인증/보안 인증으로 사용자 계정을 연동할 수 있습니다.
  • 채팅 대화명 및 채팅 폰트를 변경할 수 있습니다.
  • 쿠폰을 사용할 수 있습니다.
  • 여러 기능을 사용하여 상품을 관리할 수 있습니다.
  • 기본 시스템 공유 UI를 사용하거나 커스텀 시스템 공유 UI를 사용할 수 있습니다.
  • 재생 중인 방송 링크를 공유할 수 있습니다.
  • Shoplive Player 재생 중 인터럽트 옵션을 설정할 수 있습니다.
  • 태블릿 세로 모드에서 영상 비율을 설정할 수 있습니다.
  • 재생 중인 방송에 관한 각종 정보를 실시간 전달받을 수 있습니다.
  • Shoplive iOS SDK에 관한 각종 정보를 실시간 전달받을 수 있습니다.

요구 사양

Shoplive iOS SDK를 사용하기 위한 최소 요구 사양입니다. 이 요구 사항을 충족하지 않으면 Shoplive iOS SDK를 사용할 수 없습니다.

  • Xcode 14 이상
  • iOS 11 이상
  • iOS Deployment Target 11.0 이상
  • Swift 4.2 이상

변경 사항

v1.3.3 (2023-02-23)

ShopLive.setMixWithOthers(isMixAudio: Bool)
  • 진입경로 통계를 측정할 수 있는 파라미터를 추가했습니다.
ShopLive.play(with campaignKey: String?, keepWindowStateOnPlayExecuted: Bool = false, referrer: String? = nil)
ShopLive.preview(with campaignKey: String?, referrer: String? = nil, completion: @escaping () -> Void)
  • 이제 Preview와 PIP모드에서 닫기 버튼을 활성화할 수 있습니다.
ShopLive.useCloseButton(use: Bool = false)
  • 플레이어의 재생 성능을 개선했습니다.
  • 이제 Preview는 외부 오디오와 함께 시청할 수 있습니다.
  • Shoplive Player 현재 상태를 전달받습니다.
  • Shoplive Player의 이벤트 로그를 전달하는 Handler 인터페이스 parameter가 변경되었습니다.
extension MainViewController: ShopLiveSDKDelegate {
    func handleChangedPlayerStatus(status: String) {

        // status Created(플레이어 생성됨), DESTROYED(플레이어 종료됨)
        print("handleChangedPlayerStatus status: \(status)")
    }
    ...
}

v1.3.2 (2023-02-06)

  • Shoplive Player의 이벤트 로그를 전달하는 Handler 인터페이스 parameter가 변경되었습니다.
    • before
    log(name: String, feature: ShopLiveLog.Feature, campaign: String, parameter: [String: String])
    
    • after
    log(name: String, feature: ShopLiveLog.Feature, campaign: String, payload: [String: Any])
    

v1.3.1 (2022-11-30)

  • 특정 경우에 플레이어 내 웹뷰의 지연이 발생하는 버그를 수정하였습니다.
  • 이제 방송 배경 이미지(방송 예고, 진행 중, 종료 후 이미지)에 애니메이션 이미지를 사용할 수 있습니다. (gif, apng, webp 등)
  • ShopLive.startPictureInPicture() API가 간헐적으로 동작하지 않는 버그를 수정하였습니다.
  • 이제 볼륨 버튼을 눌러 플레이어를 음소거를 해제할 수 있습니다.
  • 영상 송출이 중단되었다가 재개되었을 때 Shoplive SDK에서 비디오를 간헐적으로 불러올 수 없는 버그를 수정했습니다.
  • 채팅 버튼을 빠르게 누르면 Shoplive Player에서 채팅 및 제품 UI가 사라지는 버그를 수정했습니다.

v1.3.0 (2022-09-22)

  • 가로모드 방송을 지원하도록 업데이트 되었습니다. 가로모드 방송을 사용하기 위해서는 Shoplive 담당자에게 문의해주시기 바랍니다.
  • Shoplive 방송화면의 UIWindow를 사용할 수 있도록 playerWindow property를 추가하였습니다.
  • PIP의 width를 설정하여 PIP의 사이즈를 변경할 수 있는 fixedPipWidth property를 추가하였습니다.
  • Shoplive Player의 현재 실행 중인 모드(영상 재생중, 미리보기, 실행중이지 않음)를 알 수 있는 playerMode property를 추가하였습니다.
  • 현재 재생 중인 방송의 가로방송, 세로방송 모드를 알 수 있는 orientationMode property를 추가하였습니다.
  • OS PIP로 영상이 재생되고 있을 때 PIP를 클릭하여 고객사 앱으로 전환되는 경우, OS PIP로 전환되기 직전의 재생 모드로 (앱내 PIP 또는 Fullscreen mode) 전환하도록 설정할 수 있는 setKeepWindowStyleOnReturnFromOsPip(_ keep: Bool) 인터페이스를 추가하였습니다.
  • 영상이 재생되고 있을 때, 음소거 또는 음소거 해제를 직접 설정할 수 있는 mute(), unmute() 인터페이스를 추가하였습니다.
  • PIP 모드에서 창 위치를 움직일 때, 창의 좌표 정보와 gesture event를 전달하는 Handler 인터페이스를 추가하였습니다.
    • playerPanGesture(state: UIGestureRecognizer.State, position: CGPoint)
  • Shoplive Player의 이벤트 로그를 전달하는 Handler 인터페이스를 추가하였습니다. Google Analytics 등에 활용 할 수 있습니다.
    • log(name: String, feature: ShopLiveLog.Feature, campaign: String, parameter: [String: String])

이전 버전 업데이트


SDK 샘플

아래 링크에서 SDK 샘플을 확인할 수 있습니다.

[<<<<<<<<https://github.com/shoplive/ios-sdk-sample>>>>>>>>]


What’s Next