canOpenURL:URL 失败:“instagram://app” - 错误:“此应用不允许查询方案 instagram”
Posted
技术标签:
【中文标题】canOpenURL:URL 失败:“instagram://app” - 错误:“此应用不允许查询方案 instagram”【英文标题】:canOpenURL: failed for URL: "instagram://app" - error: "This app is not allowed to query for scheme instagram" 【发布时间】:2017-05-15 09:30:58 【问题描述】:这是我使用的代码:
let instagramURL = NSURL(string: "instagram://app")
if UIApplication.shared.canOpenURL(instagramURL! as URL)
//Code
else
//Showing message "Please install the Instagram application"
我进入 if 循环失败了。
我收到此错误:
我还在我的设备中使用 Instagram 登录。
【问题讨论】:
UIApplication.shared.canOpenURL
检查 your 应用是否可以打开 URL。该错误表明您不允许检查 your 应用是否可以打开 Instragram URL(因为您可以编写恶意代码来拦截用于其他应用的 URL)。你想完成什么?
【参考方案1】:
右键单击您的 plist 文件并将其作为源代码打开。然后复制并粘贴以下代码:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>instagram</string>
</array>
注意:您必须记住一件事,它不适用于模拟器。为此,您需要一个真实的设备。
【讨论】:
感谢您的注意,否则我会花几个小时来调试我的代码 xD【参考方案2】:打开您的 plist 作为源代码并粘贴以下代码:
<key>LSApplicationQueriesSchemes</key>
<array>
<string>instagram</string>
</array>
【讨论】:
【参考方案3】:问题是您没有在 info.plist 文件中注册 URL 方案。
请添加此 LSApplicationQueriesSchemes 并将 instagram 添加到您的 info.plist 中,它将起作用。
【讨论】:
截至 2019 年:字符串必须是 instagram【参考方案4】:对于那些尝试使用自定义 URL 方案打开应用程序的人(假设应用程序 FirstApp 打开 SecondApp):
在 FirstApp 中,将带有 URL Scheme 的LSApplicationQueriesSchemes
添加到 Info.plist,如下所示:
在 SecondApp 中,在 URL 类型中注册新的 URL 方案,如下所示:
【讨论】:
以上是关于canOpenURL:URL 失败:“instagram://app” - 错误:“此应用不允许查询方案 instagram”的主要内容,如果未能解决你的问题,请参考以下文章
facebook 登录问题 - canOpenURL:URL 失败:“fbauth2:///” - 错误:“(null)”
canOpenURL:URL 失败:“instagram://app” - 错误:“此应用不允许查询方案 instagram”
适配iOS9时候,qq和微信第三方登陆一直失败-canOpenURL: failed for URL:
在 XCode 7.0.1 中将 FB SDK(版本 4.7.0)与 iOS 9 集成时出错:canOpenURL:URL 失败:“fbauth2:/”
Swift Facebook Auth with firebase canOpenURL:URL 失败:“fbauth2:/” - 错误:“操作无法完成。(OSStatus 错误 -10814。)”