从iPhone应用程序启动Safari

从iPhone应用程序启动Safari,iphone,objective-c,safari,Iphone,Objective C,Safari,我知道我可以使用以下代码启动我自己的url,但我希望用户在使用我的bookmarklet后继续他们的工作流程,因此不想打开新选项卡并让他们重新加载我放入url变量中的url NSURL url* = [NSURL URLWithString:@"http://google.com"]; [[UIApplication sharedApplication] openUrl:""]; 这可以做到吗?如果不退出应用程序并打开Safari,就无法打开Safari。或者,在加载打开的URL后,自动将用户

我知道我可以使用以下代码启动我自己的url,但我希望用户在使用我的bookmarklet后继续他们的工作流程,因此不想打开新选项卡并让他们重新加载我放入
url
变量中的url

NSURL url* = [NSURL URLWithString:@"http://google.com"];
[[UIApplication sharedApplication] openUrl:""];

这可以做到吗?

如果不退出应用程序并打开Safari,就无法打开Safari。或者,在加载打开的URL后,自动将用户从Safari返回到您的应用程序


还是我误解了这个问题?

实际上,你可以将URL处理程序委托给你的应用程序。此处显示了一个智能示例:

情况是: -注册URL处理程序 -像往常一样开放Safari -让Safari使用应该打开应用程序的自定义URL处理程序(例如:myapp://)


看看Flickr iPhone应用程序进行身份验证的方式。

能否使用“about:blank”作为url?这应该只是打开一个空白页的Safari。我假设这类似于点击右下角的“数字”按钮,然后选择“新建页面”。

我只想在没有url的情况下启动应用程序,而不是使用我的url启动应用程序-只需启动itAh即可。不,你也不能那样做。主要是因为不是每个你可能传递给-openURL:的URL都会打开Safari。例如,“tel:”URL打开手机应用程序。你能澄清一下你想做什么吗?我真的不明白。听起来你可能想在应用程序的UIWebView中做些什么,但我不太确定。我知道这是一篇老文章,但上面的代码没有意义。从不使用
url
变量,
openURL:
采用
NSURL
而不是字符串。重新调整代码是值得的,这样可以让您更清楚地知道您要做什么。