초기화하기

Wepin widget iOS SDK를 초기화하는 방법입니다.

먼저 위핀 인스턴스를 생성하고 앱 등록 후 할당 받은 앱 ID와 앱 키를 이용하여 인스턴스를 초기화 합니다.

초기화하기

생성된 인스턴스를 사용하기 전에 앱 ID와 앱 키를 이용하여 초기화를 합니다.

import wepin

let appId = "app_id_eg12sf3491azgs520"
let appKey = "ak_test_ghq1D5s1sfG234sbnhdsw24mnovk313", 
let attributes = Wepin.WidgetAttributes(type: Wepin.WidgetType.show)

let attributes = Wepin.WidgetAttributes(type: Wepin.WidgetType.show)
let wepin = Wepin.instance()
wepin.initialize(appId: appId, appKey: appKey, attributes: attributes){ (result, error) -> Void in
    print(result)
}

WidgetAttributes, WidgetType

초기화에 사용되는 파라미터 WidgetAttributesWidgetType 아래와 같이 정의되어 있습니다.

public enum WidgetType: String {
    case show
    case hide
}

public struct WidgetAttributes {
    var type: WidgetType
    var defaultLanguage: String
    var defaultCurrency: String
}
  • appId: String 앱 등록시 할당 받은 ID

  • appKey: String 앱 등록시 할당 받은 키 값

  • attributes: Object (optional) 위핀 위젯의 속성 값

    • type: WidgetType 처음 로딩 시 앱 위젯 윈도우를 어떻게 보여줄 지를 결정 합니다. 기본 값은 hide 입니다. show: 처음 로딩 후, 바로 위젯 윈도우를 띄워서 보여 줍니다. hide: 는 처음 로딩시 위젯 윈도우를 보여주지 않고 숨깁니다. 이후 openWidget()을 통해서 위젯을 띄워 보여 줍니다.

    • defaultLanguage: String 위젯 기본 언어 설정, 기본 값은 ko입니다. 현재 지원하는 언어는 en, ko 이렇게 2가지 입니다.

    • defaultCurrency: String 위젯 기본 통화 설정, 기본 값은 KRW입니다. 현재 지원하는 통화는 USD, KRW 이렇게 2가지 입니다.

앱의 Info 파일에서 추가한 URL schemes 값을 AppDelegate 또는 SceneDelegate에서 처리해야 합니다. 앱에 SceneDelegate가 있으면 SceneDelegate 에서 처리하고, 없으면 AppDelegate 에서 아래와 같이 처리하는 코드를 추가 합니다.


// AppDelegate에 추가하는 경우에는 
// func application(_ app: UIApplication, open url: URL, options: [UIApplication.OpenURLOptionsKey : Any] = [:]) -> Bool{ }
// 에서 처리 

func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {

    guard let url = URLContexts.first?.url else { return }
    let bundleId = Bundle.main.infoDictionary?[“CFBundleIdentifier”] as! String
    print(“bundleId ” + bundleId)
    let checkScheme = bundleId + “.wepin”
    // url scheme 체크
    guard url.scheme == checkScheme else {
      print(“invalid url scheme :+ url.scheme!)
      return
    }
    // 받은 url을 wepin에 넘겨준다
    Wepin.instance().handleUniversalLink(paramUrl: url)
    //
}

isInitialized

isInitialized메서드를 이용해서 Wepin 인스턴스가 정상적으로 초기화 되었는지 확인할 수 있습니다.

반환값은 아래와 같습니다.

  • boolean init 결괏값, init이 정상적으로 잘 된 경우 true 실패한 경우 false 를 반환합니다.

if(Wepin.isInitialized()) {
    // Success to initialize wepin
}

Last updated