네이티브 연동
소스라이브의 네이티브 플레이어 연동 가이드 입니다.
시스템 요구 사항
- Android SDK 버전 24 이상
네이티브 플레이어 설치
- Project Root 폴더의 'setting.gradle' 파일에 mavenCentral 저장소 추가
dependencyResolutionManagement {
repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
repositories {
google()
mavenCentral()
}
}
- 'build.gradle' 파일에 종속성 추가 SDK 버전 정보
dependencies {
implementation("io.github.mobidoo-official:SauceLive_Android:$SDK Version")
}
네이티브 플레이어 초기화
사용 전 가장 먼저 추가 되어야 하는 코드 입니다.
Application 클래스가 없을 경우 생성하고, AndroidManifest.xml 에도 추가 하여야 합니다.
SauceLivePlayerClient.init(context: Context, partnerId: String)
Parameter | Type | Description |
---|---|---|
context | Context | API Host 설정 및 Koin model 초기화에 사용 |
partnerId | String | 플레이어 사용을 위해 partnerId가 반드시 필요 |
Application Class 에서 초기화 함수 호출
class Application: Application(){
override fun onCreate() {
super.onCreate()
SauceLivePlayerClient.init(this,"파트너 ID")
}
}
네이티브 플레이어 사용
SauceLivePlayerClient.getInstance() : SauceLivePlayerClient
- 라이브 네이티브 플레이어 재생 및 콜백 설정들을 위해 필요한 객체
플레이어 사용이 필요한 곳에서 호출
ex) 라이브 플레이어 재생
class MainActivity: ComponentActivity() {
private val sauceClipPlayerClient = SauceClipPlayerClient.getInstance()
. . .
override fun onCreate(savedInstanceState: Bundle?) {
sauceLivePlayerClient.startPlayer(this,broadcastId,accessToken)
}
}
이벤트 Callback Listener 등록
setCallbackListener(playerCallback: PlayerCallbackListener)
- 웹 플레이어의 브릿지 역할을 대신 하는 콜백 리스너
sauceLivePlayerClient.setCallbackListener(object : sauceLivePlayerClient.PlayerCallbackListener {
override fun onLoginRequest() {
}
override fun onCouponDownload(couponCode: String){
}
override fun onCouponCustom(couponData: String) {
}
})
PlayerCallbackListener
- onLoginRequest( ) : 채팅, 리워드 참여 등 회원 로그인이 필요한 상황에 로그인 팝업에서 버튼 클릭시 콜백 전달
- onCouponDownload(couponCode: String) : 라이브 진행 중 등록한 쿠폰의 Type이 Download일 때 등록한 쿠폰 코드 콜백으로 전달
- onCouponCustom(couponData: String) : 라이브 진행 중 등록한 쿠폰의 Type이 Custom일 때 등록한 쿠폰 데이터 콜백으로 전달
플레이어 UI 설정
플레이어 UI는 컨피그에서 설정할 수 있습니다.
플레이어 재생
startPlayer(context: Context,broadcastId: String,token: String?)
- 라이브 플레이어 재생
sauceLivePlayerClient.startPlayer(context,broadcastId,token)
Params | Type | Description |
---|---|---|
context | Context | |
broadcastId | String | 라이브 방송 ID or VOD ID |
token | String? | 회원 연동을 위한 Token ( 필요 시 사용 ) |
Updated 11 days ago