如何在 ios 的新 facebook sdk 中实现深度链接?
Posted
技术标签:
【中文标题】如何在 ios 的新 facebook sdk 中实现深度链接?【英文标题】:How can implement deep linking in new facebook sdk in ios? 【发布时间】:2015-08-18 10:16:45 【问题描述】:如何在 ios 的新 Facebook SDK 中实现深度链接?
【问题讨论】:
【参考方案1】:要在 Facebook 上进行深度链接,您需要在您的网站上使用他们的 App Links 元标记。 Facebook 的 App Links 最令人困惑的是,它们实际上并不是链接,它们是您网站上的元标记。例如,IMDB 如何将应用链接添加到他们的 The Rock 电影网站:
<html prefix="og: http://ogp.me/ns#">
<head>
<title>The Rock (1996)</title>
...
<meta property="al:ios:app_store_id" content="342792525" />
<meta property="al:ios:url" content="imdb://title/tt0117500" />
<meta property="al:ios:app_name" content="IMDb Movies & TV" />
<meta property="al:android:package" content="com.imdb.mobile" />
<meta property="al:android:url" content="imdb://title/tt0117500" />
<meta property="al:android:app_name" content="IMDb Movies & TV" />
...
</head>
...
</html>
您可以看到他们的深层链接 URI 和路径是 imdb://title/tt0117500
,他们必须在他们的网站上指定它,以便 Facebook 机器人可以抓取它。
一旦元标签出现在网站上,当链接发布到 Facebook 的提要时,如果应用程序已通过调用元标签中指定的 URI 进行安装,他们将直接打开该应用程序。然后,在您应用的 App Delegate 中,您可以接收在 openUrl
方法中指定的 URI,如下所示:
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation
NSLog(@"opened app from URL %@", [url description]);
return YES;
您可以在该方法中解析 URL 并打开将显示与该 URL 关联的适当数据的视图控制器。
【讨论】:
除了这个很棒的答案;你可以在这里阅读更多内容:developers.facebook.com/products/app-links 我已经做了这个功能并且我的应用链接可以正常工作。但我无法在 facebook 上获取数据发布。我想要以下功能------- 任何用户点击 facebook 上的任何帖子然后获取此帖子数据并打开 ios app.if 应用程序已安装。 Alpesh - Facebook 似乎不承认 iOS 上的应用链接。我在 Branch (branch.io) 工作以帮助开发人员做到这一点,我们仍然必须依靠 javascript 技巧在 iOS 上打开应用程序。 Android 运行良好。以上是关于如何在 ios 的新 facebook sdk 中实现深度链接?的主要内容,如果未能解决你的问题,请参考以下文章
在 iPhone 应用程序中,如何将照片发布到 Facebook 粉丝页面。在它之前如何喜欢它?使用 facebook-ios-sdk
如何在 IOS 中使用 FB SDK 创建 Facebook 应用广告
登录并再次授权时如何在iOS SDK中的Facebook应用程序中获取Facebook帐户的更改?