首页 文章

如何在Xamarin.Forms中本地启动外部应用程序?

提问于
浏览
2

正如问题 Headers 所示,我正在寻找一种从 Xamarin.Forms 应用程序中启动外部应用程序的方法 . 例如,我的应用程序有一个地址列表,当用户点击其中一个地址时,将打开当前平台的内置 Map 应用程序(Google Maps for Android,Apple Maps for iOS) . 如果重要,我只针对Android和iOS .

当然,我可以使用依赖服务并在每个平台的基础上编写应用程序启动代码,但我更愿意,如果我只需要编写一次 . 是否有一种本地方式在Xamarin.Forms中执行此操作?我无法在Xamarin网站或论坛上找到任何正式记录的内容 .

1 回答

  • 8

    使用Device.OpenUri并传递适当的URI,并与Device.OnPlatform结合以格式化每个平台的URI

    string url; 
    
    Device.OnPlatform(iOS: () =>
      {
         url = String.Format("http://maps.apple.com/maps?q={0}", address);
      },
      Android: () =>
      {
        url = String.Format("http://maps.google.com/maps?q={0}", address);
      });
    
    Device.OpenUri(url);
    

相关问题