从我的应用程序启动 Facebook 应用程序并使其打开不属于我的个人资料

Posted

技术标签:

【中文标题】从我的应用程序启动 Facebook 应用程序并使其打开不属于我的个人资料【英文标题】:Launch Facebook app from my app and make it open a profile which is not mine 【发布时间】:2011-12-12 19:39:58 【问题描述】:

我正在开发一个应用程序,我需要在其中放置一个按钮,将用户重定向到某个 Facebook 页面。通常点击此按钮应在 Facebook 应用程序中打开个人资料,如果未安装 Facebook,则在导航器中打开。另外,我想在 Twitter 页面上做同样的事情。

我想知道怎么做。

【问题讨论】:

【参考方案1】:

这一切都归结为自定义 url 方案。 Facbook 是fb://,所以如果你打开fb://profile/zuck,Mobile Safari 会跳转到 Facebook 应用程序并加载 Mark Zuckerbergs 的个人资料页面。目前,新的 Facebook 应用程序中存在一个错误,导致其无法正确加载个人资料。

要检查用户的设备是否可以响应 URL 方案,请查看 this post。

编辑::

就 Twitter 而言,您可能需要检查几个不同的 Twitter 客户端,例如 twitter://tweetbot://,然后再将用户踢到 https://twitter.com/#!/<# User Name #>

【讨论】:

【参考方案2】:

为了扩展@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"]];

【讨论】:

【参考方案3】:

您可以通过获取该个人资料的 Facebook id 来打开它。所以你可以找到 Facebook id 为: 网址https://www.facebook.com/pageName 现在,转到:http://findmyfacebookid.com 粘贴您的 URL,获取 Facebook id,然后将 url 设为 @"fb://profile/profileID"

它对我有用!

【讨论】:

【参考方案4】:

edit我明白你的意思/edit

Facebook iPhone 应用程序注册为 fb:// 前缀的 URL 处理程序。我不确定这是否适用于所有版本,但我相信单击指向fb://profile/page or profile id 的链接将在 iphone 应用程序中打开配置文件(如果已安装)。

我在this question 上发现了这一点,截至 3.4 版是准确的(目前是 4.0,但我想其中大部分仍然有效)

【讨论】:

对不起,如果不清楚,我的英语不好。问题是我需要制作一个 ios 应用程序,它可以打开一个不是本地用户个人资料的 Facebook 个人资料(例如 facebook 上的可口可乐页面)。我希望该 profiel 页面在 facebook 应用程序中打开,而不是在 safari 导航器中打开。我不确定这是否可能,我从来没有一个应用程序这样做。非常感谢您的回答。再次为帖子的清晰度感到抱歉。

以上是关于从我的应用程序启动 Facebook 应用程序并使其打开不属于我的个人资料的主要内容,如果未能解决你的问题,请参考以下文章

使用 facebook api 从我的应用程序中的 facebook 注销问题

在用户注销时从我的应用程序中删除 facebook 会话 cookie

如何从我的 Facebook 应用程序访问我的客户帐户?

iOS - Facebook 单点登录 - 从我的视图控制器

从我的应用程序中注销(使用 facebook android sdk 4.0 开发)并安装 facebook 原生应用程序

我如何从我的应用程序中发布消息 Facebook 墙