我希望通过动态链接发送参数,也可以接收相同的参数。
我通过简短的动态链接传递了自定义参数。这是我的链接:https://pc988.app.goo.gl/vQaV?test=1
我正在使用以下代码来接收动态链接:
func application(_ app: UIApplication, open url: URL, options: [UIApplicationOpenURLOptionsKey : Any] = [:]) -> Bool {
if let dynamicLink = DynamicLinks.dynamicLinks()?.dynamicLink(fromCustomSchemeURL: url){
self.handleIncomingDynamicLink(dynamicLink: dynamicLink)
return true
}
else{
let handled = FBSDKApplicationDelegate.sharedInstance().application(app, open: url, options: options)
return handled
}
}
@available(iOS 8.0, *)
func application(_ application: UIApplication, continue userActivity: NSUserActivity, restorationHandler: @escaping ([Any]?) -> Void) -> Bool {
if let incomingURL = userActivity.webpageURL{
let linkHandled = DynamicLinks.dynamicLinks()!.handleUniversalLink(incomingURL, completion:{ [weak self] (dynamiclink, error) in
guard let strongSelf = self else{ return }
if let dynamiclink = dynamiclink, let _ = dynamiclink.url {
strongSelf.handleIncomingDynamicLink(dynamicLink: dynamiclink)
}
})
return linkHandled
}
return false
}
func handleIncomingDynamicLink(dynamicLink: DynamicLink) {
if dynamicLink.matchConfidence == .weak{
}else {
guard let pathComponents = dynamicLink.url?.pathComponents else { return }
for nextPiece in pathComponents{
}
}
print("incoming link \(dynamicLink.url)")
}
我的确切问题是,我无法获得我在上面提到的动态短链接中传递的'test'参数。
帮我摆脱这个问题。
答案 0 :(得分:2)
要附加自定义参数,您需要将参数附加到深层链接,而不是动态链接。
在您的示例中,深层链接为https://www.fitview.com/(您可以在调试页面https://pc988.app.goo.gl/vQaV?d=1中看到此内容)。
要实现目标,请将深层链接设置为https://www.fitview.com?test=1,创建动态链接,然后缩短动态链接。