【发布时间】:2011-01-12 02:03:21
【问题描述】:
如何从我最近制作的应用程序中打开 facebook 应用程序?
【问题讨论】:
如何从我最近制作的应用程序中打开 facebook 应用程序?
【问题讨论】:
您需要您希望打开的应用程序的支持。如果应用程序配置为处理自定义 URL 方案,您可以使用 UIApplication 的 openURL 方法打开它。
幸运的是,Facebook 应用程序确实支持自定义 URL 方案。 Details here。请注意,这不是文档化界面,因此 Facebook 应用程序可能会在更新中取消此功能。要正确处理此问题,以及处理用户未安装应用程序的情况,您应该使用UIApplication 的handleURL 方法进行检查。
根据您的工作情况,使用 Facebook 的 API 可能是一种更好的方法。
【讨论】:
如果其他应用程序具有 URL 方案,则您打开它们,应用程序的 URL 方案可能会随着任何更新而更改,甚至被完全删除,因此请务必检查应用程序是否已安装/URL 方案是否未更改或删除.
UIApplication 用于做这两件事。
您需要先获取sharedApplication
[UIApplication sharedApplication]
然后使用canOpenURL:(NSURL *)url查看应用是否可以打开。这不会检查 URL 是否对该应用程序有效,因此如果返回 YES,它可能仍会失败。但是如果返回YES,其他应用肯定会打开。
然后使用openURL:(NSURL *)url实际打开它。
例如:
//myURL is already set up
if ([[UIApplication sharedApplication] canOpenURL:myURL]) {
if (![[UIApplication sharedApplication] openURL:myURL]) {
//There was an error opening the URL
}
}
http://handleopenurl.com/ 是查找应用的 URL 方案的地方。
【讨论】: