-canOpenURL: failed for URL: "kindle://home" - error: "This app is not allowed to query for scheme k
2016-02-20 21:56
656 查看
iOS 从C APP里启动 D APP
首先在D APP里设置 URL Schemes
在info.plist 文件里添加URL Schemes
URL Types -->item0 --> URL Schemes --> TestD
然后再回到C APP 找到info.plist 文件
添加 LSApplicationQueriesSchemes --> item0 TestD
D程序
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation{
NSString *str=[NSStringstringWithFormat:@"url:%@,source application:%@,params:%@",url,sourceApplication,[urlhost]];
NSLog(@"%@",str);
UIAlertView * alert = [[UIAlertViewalloc]initWithTitle:@"提示"message:[url
host]delegate:selfcancelButtonTitle:@"OK"otherButtonTitles:nil,nil];
[alert show];
return
YES;//是否打开
}
C程序
NSString *url=@"TestD://MyNameIsHanMeiMei";
[self openUrl:url];
-(void)openUrl:(NSString *)urlStr{
//注意url中包含协议名称,iOS根据协议确定调用哪个应用,例如发送邮件是“sms://”其中“//”可以省略写成“sms:”(其他协议也是如此)
NSURL *url=[NSURLURLWithString:urlStr];
UIApplication *application=[UIApplicationsharedApplication];
if(![application
canOpenURL:url]){
NSLog(@"无法打开\"%@\",请确保此应用已经正确安装.",url);
return;
}
[[UIApplicationsharedApplication]
openURL:url];
}
首先在D APP里设置 URL Schemes
在info.plist 文件里添加URL Schemes
URL Types -->item0 --> URL Schemes --> TestD
然后再回到C APP 找到info.plist 文件
添加 LSApplicationQueriesSchemes --> item0 TestD
D程序
-(BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation{
NSString *str=[NSStringstringWithFormat:@"url:%@,source application:%@,params:%@",url,sourceApplication,[urlhost]];
NSLog(@"%@",str);
UIAlertView * alert = [[UIAlertViewalloc]initWithTitle:@"提示"message:[url
host]delegate:selfcancelButtonTitle:@"OK"otherButtonTitles:nil,nil];
[alert show];
return
YES;//是否打开
}
C程序
NSString *url=@"TestD://MyNameIsHanMeiMei";
[self openUrl:url];
-(void)openUrl:(NSString *)urlStr{
//注意url中包含协议名称,iOS根据协议确定调用哪个应用,例如发送邮件是“sms://”其中“//”可以省略写成“sms:”(其他协议也是如此)
NSURL *url=[NSURLURLWithString:urlStr];
UIApplication *application=[UIApplicationsharedApplication];
if(![application
canOpenURL:url]){
NSLog(@"无法打开\"%@\",请确保此应用已经正确安装.",url);
return;
}
[[UIApplicationsharedApplication]
openURL:url];
}
相关文章推荐
- Unity3d插件 之 Easytouch
- Android源码下载小结
- 聊聊iOS各种延时的背后
- iOS核心动画Core Animation(二)
- Android判断屏幕状态与屏幕解锁和锁定
- iOS 播放器思路
- iOS 开发 -- Swift 语法篇 (一) 常量和变量
- iOS核心动画Core Animation(一)
- iOS 9中需要使用 QQ/QQ空间/支付宝/微信SDK 的相关能力(分享、收藏、支付、登录等)时,需要在“Info.plist”里增加如下代码
- Android自定义Dialog
- Android studio 设置注释模板以及函数注释快捷键
- 编译android源码
- Cocos2d-x ListView 的添加,删除,点击和滑动到头和尾监听
- Android存储_SharedPreferences
- Android_Fragment
- c# 操作.config中AppSettings配置节
- Android native Thread实现 和Java Thread区别
- android 接入微信支付和分享填坑
- 找不到类 android...app.WindowDecorActionBar
- Android开发学习之路-Handler消息派发机制源码分析