[英]Facebook not open page in app swift 3
我在我的网站上有一个指向我的facebook的链接,该链接在手机的浏览器中打开。
如果安装了应用程序,我希望默认情况下在Facebook应用程序中打开它。
我试图放置此代码,但是它不起作用。 始终仅通过野生动物园而不是通过Facebook应用程序打开Facebook页面。 如果可以的话请给我。
@IBAction func supporto(_ sender: UIBarButtonItem) {
let Username = "831831923611308"
let appURL = NSURL(string: "fb://profile/\(Username)")!
let webURL = NSURL(string: "https://facebook.com/\(Username)")!
let application = UIApplication.shared
if application.canOpenURL(appURL as URL) {
if #available(iOS 10.0, *) {
application.open(appURL as URL)
} else {
// Fallback on earlier versions
}
} else {
if #available(iOS 10.0, *) {
application.open(webURL as URL)
} else {
// Fallback on earlier versions
}
}
}
我可以确认您使用的代码确实有效。 我将其放置在新项目中,将其安装在手机上,并按如下所示设置Info.plist
值:
有几个原因可能导致您的代码无法正常工作。
Info.plist
中的更改。 LSApplicationQueriesSchemes
添加到Info.plist
并且这是设置为加载应用程序的plist。 您可以转到“项目编辑器”的“信息”选项卡,并确保使用指定的选项LSApplicationQueriesSchemes
,以检查Info.plist
是否正确加载了“查询方案”。
如果您对不在白名单中的URL调用“ canOpenURL”方法,则即使安装了已注册用于处理此方案的应用程序,该方法也会返回“ NO”。 将会出现“此应用程序不允许查询方案xxx”的系统日志条目。
如果您对不在白名单中的URL调用“ openURL”方法,则该方法将自动失败。 将会出现“此应用程序不允许查询方案xxx”的系统日志条目。
因此,您必须在info.plist的LSApplicationQueriesSchemes
中放入fb
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.