我正在使用xamarin.forms,我可以使用Device
类启动facebook应用程序,如下所示:
Device.OpenUri(new Uri("fb://profile/page_id"));
如果设备中未安装该应用,该怎么办?如何检查设备中是否未安装应用程序。
我在try
块中编写了上面的代码行,但是当没有安装应用程序时,代码仍会运行而没有任何输出和异常。我想重定向到itunes进行安装,如下所示:
CrossShare.Current.OpenBrowser("https://itunes.apple.com/us/app/facebook/id284882215/");
我在xamarin.forms中使用Plugin.share。
答案 0 :(得分:2)
使用AppLinks。你必须使用铆钉。
链接到其他应用 - 而不是在浏览器中打开网络链接 直接,您应该让App Links导航处理如何操作 打开一个链接。
这是正确的方法。如果没有安装,它将处理存储导航,并根据您的URL处理浏览器。
您可以阅读更多相关信息here。
Rivets.AppLinks.Navigator.Navigate("http://any.old.url");
您的应用现在将尝试导航到另一个已安装的应用 使用App Links的URL,或者将在ios中使用UIApplication.OpenUrl,或者如果没有找到App Link元数据,则会回退到在Android中使用带有视图操作的intent,或者没有 已安装元数据的应用程序。