Handler
Handler
Shoplive Short-form에서 발생한 알림을 클라이언트에서 ShopLiveShortformReceiveHandlerDelegate
함수를 통해 전달받고 필요하게 처리합니다.
protocol ShopLiveShortformReceiveHandlerDelegate : AnyObject {
@objc optional func handleShare(shareMetadata: ShopLiveShareMetaData)
@objc optional func onError(error: Error)
@objc optional func onEvent(command: String, payload: String?)
@objc optional func onDidAppear()
@objc optional func onDidDisAppear()
}
//핸들러 채택하기
class ViewController : ShopLiveShortformReceiveHandlerDelegate {
override func viewDidLoad(){
super.viewDidLoad()
ShopLiveShortform.ShortsReceiveInterface.setHandler(self)
}
}
onEvent(command: String, payload: String?)
Shoplive Short-form에서 발생하는 여러 가지 이벤트를 직접 핸들링할 수 있는 messageCallback 함수를 제공합니다.
onError(error: Error)
Shoplive Short-form에서 발생하는 에러를 직접 핸들링할 수 있는 messageCallback 함수를 제공합니다.
ShopLiveCommonError
variable description code : Int Shoplive 지정 에러코드 message : String? 에러 메시 error : Error? 에러 원문 class ViewController : UIViewController, ShopLiveShortformReceiveHandlerDelegate { func onError(error : Error) { if let error = error as? ShopLiveCommonError { if let code = error.code { //do something } if let message = error.message { //do something } if let error = error.error { //do something } } } }
handleShare(shareMetaData: ShopLiveShareMetaData)
Shoplive Short-form 에서 직접 공유하기 기능을 개발합니다.
ShopLiveMetaData
field type description shortsId String? Short-form 고유의 아이디 shortsSrn String? Short-form 고유 정보를 담는 아이디 title String? Short-form 제목 (og tag 용도) descriptions String? Short-form 설명 (og tag 용도) thumbnail String? Short-form thumbnail (og tag 용도) class ViewController : ShopLiveShortformReceiveHandlerDelegate { func handleShare(shareMetaData: ShopLiveShareMetaDatag) { //Do something } }
onDidAppear()
Shoplive Short-form의 Full type 화면의 열림 이벤트를 받아볼 수 있습니다.
class ViewController : ShopLiveShortformReceiveHandlerDelegate {
func onDidAppear() {
//ex) stop ListView player when entering Shortform detail
builder?.disablePlayVideos()
}
}
onDidDisAppear()
Shoplive Short-form의 Full type 화면의 닫힘 이벤트를 받아볼 수 있습니다.
class ViewController : ShopLiveShortformReceiveHandlerDelegate {
func onDidDisAppear(shareUrl: String) {
//ex) play ListView players when ListView reappeared
builder?.enablePlayVideos()
}
}
ShopLiveShortformDetailHandlerDelegate
Shoplive Short-form에서 발생한 알림을 클라이언트에서 ShopLiveShortformDetailHandlerDelegate
함수를 통해 전달받고 필요하게 처리합니다.
class ViewController : ShopLiveShortformDetailHandlerDelegate {
func handleProductItem(shortsId : String, shortsSrn : String, product : Product){ }
func handleProductBanner(shortsid : String, shortsSrn : String, scheme : String, shortsDetail : ShortsDetail){ } )
}
ShopLiveShortform.ShortsReceiveInterface.setDetailHandler(self)
handleProductItem(shortsId : String, shortsSrn : String, product : Product)
Shoplive Short-form에서 직접 상품 클릭 기능을 개발합니다. 상품 생성하기
class ViewController : ShopLiveShortformDetailHandlerDelegate {
func handleProductItem(shortsId : String, shortsSrn : String, product : Product) {
//ex) Show preview when product is clicked with sku
ShopLiveShortform.showPreview(requestData: ShopLiveShortformRelatedData(sku: product.sku))
}
}
Product
field type description brand String? 상품의 브랜드 정보 currency String? 상품의 통화 description String? 상품에 대한 설명 discountPrice Double? 상품의 할인 가격 discountRate Double? 상품의 할인율 imageUrl String? 상품 이미지 URL name String? 상품명 originalPrice Double? 상품의 정상 가격 productId String? 상품 고유의 아이디. 상품 등록 시 자동으로 발급 showPrice Boolean 상품의 보이는 가격 sku String? 상품 고유의 SKU 정보 url String? 상품 상세 페이지의 URL
handleProductBanner(shortsid : String, shortsSrn : String, scheme : String, shortsDetail : ShortsDetail)
Shoplive Short-form에서 직접 배너 클릭 기능을 개발합니다. 배너 생성하기
class ViewController : ShopLiveShortformDetailHandlerDelegate {
func handleProductBanner(shortsid : String, shortsSrn : String, scheme : String, shortsDetail : ShortsDetail) { {
}
}
Updated 9 months ago