티스토리 뷰
AppDelegate말고
SceneDelegate의 이 함수에서 대응해줘야한다...
func scene(_ scene: UIScene, continue userActivity: NSUserActivity) {
if let incomingURL = userActivity.webpageURL {
print("Incoming URL is \(incomingURL)")
let linkHandled = DynamicLinks.dynamicLinks().handleUniversalLink(incomingURL) { dynamicLink, error in
guard error == nil else {
print("Found an error \(error!.localizedDescription)")
return
}
if dynamicLink == dynamicLink {
// self.handelIncomingDynamicLink(_dynamicLink: dynamicLink!)
}
}
print(linkHandled)
}
}
그리고, FirebaseDynamicLinksCustomDomains에 https://~ 꼴로 적어줘야 한다.이것때매 날린 내 하루..
let linkBuilder = DynamicLinkComponents(link: (urlComponent?.url)!, domainURIPrefix: dynamicLinksDomainURIPrefix)!
DomainURIPrefix는 딱! URL부분만 써줘야한다. 뒤쪽 Path가 붙으면 안된다.
앱 처음 킬 때도 딥링크가 적용이 되려면,
func scene(_ scene: UIScene, willConnectTo session: UISceneSession, options connectionOptions: UIScene.ConnectionOptions) {
if let userActivity = connectionOptions.userActivities.first {
self.scene(scene, continue: userActivity)
} else {
self.scene(scene, openURLContexts: connectionOptions.urlContexts)
}
}
이것도 써줘야 한다.
'macOS, iOS' 카테고리의 다른 글
[iOS] 한글 path 안되는 문제 해결하기 (0) | 2021.06.23 |
---|---|
[Swift] 문자열 치환 (0) | 2021.06.11 |
[iOS] userNotification 함수 update for iOS13 (0) | 2021.06.05 |
[iOS] AppDelegate에서 푸시 받아서 SceneDelegate에서 뷰 세팅해주기 (0) | 2021.06.04 |
[iOS] 시간 milliseconds로 받아오기 (0) | 2021.06.03 |