Я недавно хотел, чтобы мои приложения были интегрированы с Deep Link, и я обнаружил, что Branch.io - лучшая платформа для этого.Я успешно прочитал URL-адрес моей ссылки.И вот мой код для чтения, который я вставил в didFinishLaunchingWithOptions
.
let branch: Branch = Branch.getInstance()
branch.initSession(launchOptions: launchOptions, andRegisterDeepLinkHandler: {params, error in
if error == nil {
print("params: %@", params as? [String: AnyObject] ?? {})
//Read Deep Link
let sessionParams = Branch.getInstance().getLatestReferringParams()
let installParams = Branch.getInstance().getFirstReferringParams()
guard let data = params as? [String: AnyObject] else { return }
guard let options = data["promo_code"] as? String else { return }
switch options {
case "testing": self.window?.rootViewController?.present( ArticleViewController(), animated: true, completion: nil)
print("Berhasil DeepLink")
default: break
}
}
})
И вот ответ, который я получил:
["$marketing_title": Paket Tour,
"+is_first_session": 0,
"$canonical_url": http://www.invisee.com,
"~referring_link": https://invisee.app.link/promo?al_applink_da
ta=%7B%22target_url%22%3A%22https%3A%5C%2F%5C%2Fitunes.apple.com%5C%2FWe
bObjects%5C%2FMZStore.woa%5C%2Fwa%5C%2FredirectToContent%3Fid%3D1401179128%22%2
C%22extras%22%3A%7B%22deeplink_context%22%3A%22%7B%5C%22promo_code%5C%22%3A%5C%2
2testing%5C%22%7D%22%7D%2C%22referer_app_link%22%3A%7B%22url%22%3A%22fb%3A%5C%2F
%5C%2F%5C%2F%22%2C%22app_name%22%3A%22Facebook%22%7D%7D,
"+clicked_branch_link": 1,
"$og_title": INVISEE | Investment is easy,
"al_applink_data":
{"target_url":"https:\/\/itunes.apple.com\/WebObjects\/MZStore.woa\/wa\/redirectToContent?id=1401179128",
"extras":
{"deeplink_context":"{\"promo_code\":\"testing\"}"},
"referer_app_link":{"url":"fb:\/\/\/","app_name":"Facebook"}},
"$one_time_use": 0, "+match_guaranteed": 1, "$og_description": ,
"~id": 631024823602657926,
"~creation_source": 1,
"+click_timestamp": 1551695392,
"~marketing": 1,
"~campaign": reksadana,
"~feature": ads,
"~channel": facebook]
Мой вопрос, я хочупарсит промо-код и его значение.Как это сделать?И, как вы можете видеть в моем коде, есть сценарий переключения, который, я надеюсь, может поставить событие там.Кто-нибудь знает, как это решить?Большое вам спасибо!