Xamarin 表单上的 Facebook URL 方案

Posted

技术标签:

【中文标题】Xamarin 表单上的 Facebook URL 方案【英文标题】:Facebook URL Schemes on Xamarin Forms 【发布时间】:2015-07-31 12:32:56 【问题描述】:

几周前,我在 Xamarin 论坛上问了一个问题,是关于我在使用 Xamarin 表单的 Facebook 方案时遇到的问题,更准确地说是在 ios 上。 (这里的问题:https://forums.xamarin.com/discussion/comment/141207/#Comment_141207)。我仍然没有答案,所以我决定也向 *** 提问,以增加我得到答案的机会。

如果已安装,我会尝试在 Facebook 应用程序上打开一个 URL,如果没有打开 Web 浏览器。 我有那个代码:

try
    Device.OpenUri (new Uri("fb://page/page_id"));

catch(Exception e)
    System.Diagnostics.Debug.WriteLine (e.Message);
    Device.OpenUri (new Uri("https://www.facebook.com/pages/...."));

如果未安装 Facebook 或方案不正确,它在 android 上运行良好,则会引发 ActivityNotFoundException。

但在 iOS 上没有引发任何异常。我还没有尝试过 Windows Phone。 有谁知道为什么iOS平台不引发异常?

提前致谢。

【问题讨论】:

【参考方案1】:

你在真机上试过吗?模拟器可能不支持此 URI。如果您查看 iOS 如何打开 URI,如果它无法打开 URI,它通常只会返回 false 而不是异常,这可能就是您看不到异常的原因。如果您尝试从模拟器拨打电话,您应该会看到同样的结果。

【讨论】:

我刚刚在设备上进行了测试,并确认 Facebook 应用程序已激活/切换到。 Andres 关于 iOS 上的底层 API 只返回 false(不抛出异常)的评论是最有可能的解释。如果您想检测到这一点,您可以创建一个 DependencyService 以便检测“错误”响应。 感谢您的回答。我在真实设备上尝试是的。我会试试你的方法,如果有效,我会回复你。

以上是关于Xamarin 表单上的 Facebook URL 方案的主要内容,如果未能解决你的问题,请参考以下文章

在 Xamarin 表单中使用 Facebook Audience Network 进行 AdMob 中介

Xamarin 表单中的图像按钮

来自 URL 的 Xamarin 表单 ToolbarItem 图标

Xamarin 表单 - Webview 检测 URL 更改

另一台服务器上的 Spring Social Facebook URL 重定向

通过 Xamarin 表单中的 URL 获取 HTML