iOS:failed for URL: "XXX://@" - error: "This app is not allowed to query for scheme XXX" iOS 从APP...

iOS 从C APP里启动 D APP ,首先在D APP里设置 URL Schemes
在info.plist 文件里添加URL Schemes
URL Types -->item0 --> URL Schemes --> TestD
然后再回到C APP 找到info.plist 文件,在C App Info.plist 里面建立一个叫 LSApplicationQueriesSchemes 的 Array添加 LSApplicationQueriesSchemes --> item0 TestD【这是因为在iOS 9下涉及到平台客户端跳转,系统会自动到项目info.plist下检测是否设置平台Scheme。对于需要配置的平台,如果没有配置,就无法正常跳转平台客户端。因此要支持客户端的分享和授权等,需要配置Scheme名单。】

if ([[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"TestD://"]]) {
        if (iOS10) {
       //系统版本大于等于10.0
            [[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"TestD://"] options:@{} completionHandler:nil];
        } else {
            [[UIApplication sharedApplication] canOpenURL:[NSURL URLWithString:@"TestD://"]];
        }
    }

你可能感兴趣的:(iOS:failed for URL: "XXX://@" - error: "This app is not allowed to query for scheme XXX" iOS 从APP...)