【发布时间】:2019-07-02 04:45:21
【问题描述】:
我在我的项目中使用通用链接。
我已经在服务器中创建了 apple-app-site-association 文件。
我在开发者帐户中启用了关联域的 Xcode 和我写的
应用链接:www.laundry.com
AppDelegate中使用的代码是:-
//Universal links in swift delegatemethod.
func application(_ application: UIApplication,
continue userActivity: NSUserActivity,
restorationHandler: @escaping ([Any]?) -> Void) -> Bool
{
if userActivity.activityType == NSUserActivityTypeBrowsingWeb {
let url = userActivity.webpageURL!
let userurl = url.absoluteString
// print(url.absoluteString)
//handle url
if defaultValues.value(forKey: accessToken) != nil
{
print("user url is:",userurl)
let mainStoryboard: UIStoryboard = UIStoryboard(name: "Pickup", bundle: nil)
let innerPage: PickupController = mainStoryboard.instantiateViewController(withIdentifier: "PickupController") as! PickupController
innerPage.selectedfrom = "Deeplink"
self.window?.rootViewController = innerPage
}else{
setRootControllerBeforeLogin()
}
}
return true
}
但它不起作用,请帮助我。
【问题讨论】:
-
“它不工作”是什么意思?该方法没有被调用吗?或者该方法被调用,但它没有达到您的预期?另外,您是在模拟器还是设备上进行测试?
-
另外,应用站点关联文件和您的应用中的应用 ID 和应用包是否相同?
-
不是最后一个,检查stackoverflow.com/questions/32751225/…,也许你会在那里找到问题的答案
-
实际上它不会直接调用该委托方法,而是打开网页而不是移动应用程序。
-
我已经勾选并给出了打印语句[user url is:] 这些也不是打印的。
标签: ios swift ios-universal-links