Xamarin:检查IOS设备中是否安装了任何特定的应用程序

时间:2016-08-23 15:07:49

标签: c# xamarin xamarin.forms

我正在使用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

1 个答案:

答案 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,或者没有   已安装元数据的应用程序。