광고 연동하기
- 인쇄
광고 연동하기
- 인쇄
기사 요약
이 요약이 도움이 되었나요?    
의견을 보내 주셔서 감사합니다.
여러 매체의 광고를 거치게 될때, 딥링크 또는 웹 링크 주소에 쿼리 파라미터를 추가하여 지속적으로 광고를 트래킹 할 수 있습니다. 
아래 예제는 딥링크로 부터 유입된 https://xxxx/yyyy?ak={ACCESS_KEY}&ck={CAMPAIGN_KEY}&utm_source={SOURCE}&utm_medium={MEDIUM}&utm_campaign={CAMPAIGN}&utm_content={CONTENT} 를 가정합니다.
ShopLive SDK에 쿼리 파라미터 추가하기
class SceneDelegate: UIResponder, UIWindowSceneDelegate { 
    func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
        guard let urlContext = URLContexts.first else { return }
        let url = urlContext.url
        handleUrl(url : url)
    }
    
    func handleUrl(url : URL) {
        // 1. URLComponents로 URL을 분해
        guard let components = URLComponents(url: url, resolvingAgainstBaseURL: false),
              let queryItems = components.queryItems else {
            print("No query parameters found.")
            return
        }
        // 2. [String: String] 형태로 변환
        let params: [String: String] = queryItems.reduce(into: [:]) { result, item in
            result[item.name] = item.value ?? ""
        }
      
        // 3. 광고 연동에 필요한 query를 ShopLive SDK에 세팅 
        for (key,value) in params {
             if key == "utm_source" {
                 ShopLiveCommon.setUtmSource(utmSource: value)
             }
             else if key == "utm_medium" {
                 ShopLiveCommon.setUtmMedium(utmMedium: value)
             }
             else if key == "utm_campaign" {
                 ShopLiveCommon.setUtmCampaign(utmCampaign: value)
             }
             else if key == "utm_content" {
                 ShopLiveCommon.setUtmContent(utmContent: value)
             }
             else {
                 ShopLive.addParameter(key: key, value: value)
             }
        }
        ShopLive.play()
    }
}
.png)