Xamarin.Forms:Facebook和深度链接

问题描述

我正在使用 Xamarin.Forms应用,该应用将显示来自客户的Facebook页面新闻。该应用将显示2种项目:提要/帖子(来自“ client_page /提要”或“ client_page /帖子”)或事件(来自“ client_page /事件”)

我能够获得每种商品的预期信息,并可以使用browser中的Xamarin.Essentials类在浏览器中打开相应的URL。

例如,对于一个帖子,我的代码如下:

await Xamarin.Essentials.browser.OpenAsync(selectednews.Url);

我正在尝试实现深层链接以改善用户体验。为此,我在iOS的LSApplicationQueriesSchemes文件添加一个新条目(Info.plist)。然后,我正在使用Launcher中的Xamarin.Essentials类,但是遇到一些问题。

使用此代码,我可以在 Android 上的Facebook应用中打开客户端页面,但在iOS上无法打开。在iOS上,我只有认的供稿页面上打开的Facebook应用:

await Xamarin.Essentials.Launcher.OpenAsync("fb://page/115592608462989");

使用此代码,我可以在 Android 上的Facebook应用中打开客户端页面事件,但在iOS上不能打开 >。在iOS上,我只有认的供稿页面上打开的Facebook应用:

await Xamarin.Essentials.Launcher.OpenAsync("fb://event/2720519278225723");

我没有找到任何方法来打开客户端的“发布/订阅,该链接具有深层链接在两台设备上,我只能得到Facebook在我的认供稿页面上打开的应用:

await Xamarin.Essentials.Launcher.OpenAsync("fb://115592608462989_3626060134082868");
await Xamarin.Essentials.Launcher.OpenAsync("fb://page/115592608462989/posts/3626060134082868");

=>我是否忘记了一些使iOS上的深层链接正常工作的功能?有没有办法打开我客户页面的特定帖子?

更新

我终于在 iOS 上找到了一种解释:我们需要使用fb://profile/而不是fb://page/,它可以在 Android 上使用。

此外,我可以使用fb://profile/page_id/posts?id=post_id iOS 上获得特定帖子

但是我没有在 Android 上找到操作方法,因为fb://page/page_id/posts?id=post_id 不起作用。我发现在Android上实现此目标的唯一方法是给there方法是使用facewebmodal选项并将帖子的完整URL作为参数传递: `fb:// facewebmodal / f?href = https:// www.facebook.com / clientpage / posts / postid``

=>我不确定该解决方案是否可以在任何地方使用,所以我仍在寻找一种方法来在Android上使用fb://page选项发布帖子...

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)