我正在开发一个应用程序,我需要放一个按钮,将用户重定向到某个Facebook页面。如果未安装facebook,通常点击此按钮应在Facebook应用程序或导航器中打开配置文件。另外,我想用推特页面做同样的事情。
我想知道如何做到这一点。
非常感谢你的时间。
答案 0 :(得分:5)
这一切都归结为自定义网址方案。 Facbook是fb://
所以如果您要打开fb://profile/zuck
移动Safari会将您带到Facebook应用程序并加载Mark Zuckerbergs个人资料页面。目前新Facebook应用程序中存在一个错误,导致其无法正确加载配置文件。
要检查用户的设备是否可以响应网址方案,请查看this post。
EDIT ::
至于Twitter,您可能需要检查一些不同的Twitter客户端,例如twitter://
或tweetbot://
,然后再将用户踢到https://twitter.com/#!/<# User Name #>
答案 1 :(得分:4)
为了扩展@ SkylarSch的答案,这将尝试首先在本地Facebook应用程序中打开页面,否则它将在Mobile Safari中打开它:
NSURL *fbNativeAppURL = [NSURL URLWithString:@"fb://page/yourPageIDHere"];
// Check to make sure URL can be opened on device (whether the user has the Facebook app installed)
if ( [[UIApplication sharedApplication] canOpenURL:fbNativeAppURL])
{
[[UIApplication sharedApplication] openURL:fbNativeAppURL];
}
// Otherwise, just open it in the browser
{
[[UIApplication sharedApplication] openURL:[NSURL URLWithString:@"http://www.facebook.com/yourPageIDHere"]];
}
答案 2 :(得分:4)
您可以通过获取该个人资料的Facebook ID来打开它。所以你可以找到Facebook ID为: 网址https://www.facebook.com/pageName 现在,转到:http://findmyfacebookid.com粘贴您的网址,获取Facebook ID,然后将网址设为@“fb:// profile / profileID”
为我工作!
答案 3 :(得分:1)
{edit}我明白您的意思{/ edit}
Facebook iPhone应用程序注册为fb://
前缀的URL处理程序。我不确定这是否适用于所有版本,但我相信点击指向fb://profile/{page or profile id}
的链接会在iphone应用中打开配置文件(如果已安装)。
我在this question上发现这个版本在版本3.4中是准确的(它目前在4.0上,但我想其中大部分仍然有效)