iOS如何在使用UIApplication openURL启动浏览器后退出当前应用程序

时间:2010-11-17 22:33:25

标签: iphone ios uiapplication openurl

我是iOS开发的新手。我需要的应用程序非常简单:只需打开一个Web浏览器,然后在我的应用程序启动时转到特定的URL。所以在委托文件中,在didFinishLaunchingWithOptions中,我添加了一行代码:

[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@“http://www.google.com”]];

该应用程序可以打开safari并转到谷歌,但是当我按下主页按钮并尝试再次打开应用程序时,我有一个写屏幕。我知道在调用浏览器后我必须释放资源,但我不知道该怎么做。

非常感谢。

2 个答案:

答案 0 :(得分:4)

正如其他人已经回答的那样,如果您的应用就是这样,那么您的应用可能不会获得批准,而是回答您的问题:

您的问题是iOS 4上的应用程序是多任务处理,当应用程序从后台重新聚焦时,-[UIApplicationDelegate didFinishLaunchingWithOptions:]不再被调用。 (更多关于app委托方法如何与多任务here一起使用。)

如果这是你的应用程序的全部内容,那么最简单的解决方法就是opt out of multitasking

如果您不选择退出,那么您需要在使用多任务处理时调用的一个app委托方法中使用相同的“openURL”逻辑,例如-[UIApplicationDelegate applicationDidBecomeActive:]

答案 1 :(得分:2)

如果您的唯一目的是推出一个网站,则不需要应用程序(Apple不会批准该应用程序)。只需将apple-touch-icon.png图片添加到您网站的根目录,任何人都可以将该网站添加到其主屏幕,并使其看起来像应用。

http://www.apple.com/webapps/whatarewebapps.html

http://developer.apple.com/library/safari/#documentation/AppleApplications/Reference/SafariWebContent/ConfiguringWebApplications/ConfiguringWebApplications.html