-canOpenURL:URL失败:“testapp23://” - 错误:“(null)”

时间:2016-12-13 09:58:57

标签: ios ios9

我在真实设备上收到此错误:

-canOpenURL:网址失败:“testapp23:// app” - 错误:“(null)”

这是我使用的代码:

let openAnotherAppURL = NSURL(string: "testapp23://app")!     
if (UIApplication.sharedApplication().canOpenURL(openAnotherAppURL)) {
//some code
}

我将LSApplicationQueriesSchemes添加到我的info.plist文件

<key>LSApplicationQueriesSchemes</key>
<array>
     <string>testapp23</string>
</array>

它似乎“认识”了第二个应用方案方案,因为当我使用像“testaapp23”这样的东西时,我得到一个不同的错误信息(这是有意义的):

-canOpenURL:网址失败:“testaapp23:// app” - 错误:“此应用不允许查询方案testaapp23”

我在设备上安装了第二个应用程序

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>testapp23</string>
        </array>
    </dict>
</array>

我错过了一些明显的东西吗?

1 个答案:

答案 0 :(得分:0)

在Info.plist中尝试目标应用程序:

<key>CFBundleURLTypes</key>
<array>
    <dict>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>CFBundleURLSchemes</key>
        <array>
            <string>testapp23</string>
        </array>
    </dict>
</array>

我创建了包含2个目标的演示项目:源应用和目标应用。当我运行目标时,一切正常,而不是来源并检查canOpenURL: