我已经阅读了UIApplication.shared.canOpenURL
。但就我而言,它在某种程度上是行不通的。我有一个计划:
如果我安装了VK app
,则网址vk://
正常工作,Safari会成功询问我是否要打开此应用。在此步骤中,canOpenURL
会返回true
。
如果没有安装该应用,Safari说,该网址无效。但canOpenURL
仍会返回true
。
发生了什么? canOpenURL
仅检查网址的语法吗?那我该如何检查应用程序是否已安装?
答案 0 :(得分:0)
对于来自深层链接的打开应用程序,您还应该为schema和URL ::
编写一些代码行 let mainStoryboard: UIStoryboard = UIStoryboard(name: "Main", bundle: nil)
if(url.absoluteString == "appname://app/https://appurl"){
let defaults = NSUserDefaults.standardUserDefaults()
if defaults.objectForKey("access_token") != nil {
// check condition what you want for open specific page
}
else{
let loginVC: LoginViewController = mainStoryboard.instantiateViewControllerWithIdentifier("LoginViewController") as! LoginViewController
self.window?.rootViewController = loginVC
}
}
self.window?.makeKeyAndVisible()