Iphone Safari中打开URL失败
我创建了我的应用程序。我需要在iPhone中打开URL,直接查看safari 我的代码如下:Iphone Safari中打开URL失败,iphone,Iphone,我创建了我的应用程序。我需要在iPhone中打开URL,直接查看safari 我的代码如下: NSString *email = [NSString stringWithFormat:@"http://itunes.apple.com/us/album/music/id186152317?i=186153149&uo=4"]; email = [email stringByAddingPercentEscapesUsingEncoding:NSASCII
NSString *email = [NSString stringWithFormat:@"http://itunes.apple.com/us/album/music/id186152317?i=186153149&uo=4"];
email = [email stringByAddingPercentEscapesUsingEncoding:NSASCIIStringEncoding];
NSURL *url = [NSURL URLWithString:email];
if (![[UIApplication sharedApplication] openURL:url])
NSLog(@"%@%@",@"Failed to open url:",[url description]);
[super viewDidLoad];
但我的问题是,Safari视图已打开。但是URL没有打开。它显示出错误。错误是
无法打开页面safari无法打开页面,因为地址无效
但URL是在浏览器中打开的
有人知道使用Objective C在iPhone中的Safari中打开此URL的解决方案吗?将编码更改为“
NSUTF8StringEncoding
”也请检查编码完成后您的链接
uo=4
更改为
ign mpt=uo%3D4
快乐的图标…奇怪,因为Mac上的Safari不会抱怨
但是如果您将url替换为
http://itunes.apple.com/us/album/music/id186152317
它似乎也适用于iPhone。您的问题是不应该对整个URL进行URL编码。您应该只对查询字符串中每对的键和值进行编码。换句话说,URL编码:i
,186153149
,uo
和4
。没有别的了。(从技术上讲,你甚至不需要对它们进行编码,因为它们都是ASCII字母数字字符集,不需要编码)你可以使用它来获得准确的链接。希望它能帮助你更好地使用apple文档中的NSURLconnection。