代码之家  ›  专栏  ›  技术社区  ›  Torben

Xamarin表单打开另一个iOS应用程序

  •  2
  • Torben  · 技术社区  · 6 年前

    在我的Xamarin表单应用程序中,我想通过单击按钮打开另一个应用程序。Facebook应用程序就是一个例子,但它也应该与其他应用程序一起使用。我读了很多关于这个的书 here here . 基于这两个解决方案/链接,我在iOS项目中生成了一个类:

    [assembly: Xamarin.Forms.Dependency(typeof(OpenAppiOS))]
    namespace FieldServicePortable.iOS.Common
    {
        public class OpenAppiOS : IOpenApp
        {
            public OpenAppiOS() { }
    
            public void OpenExternalApp()
            {
                var nsurl = "facebook://";
                var request = new NSUrl(nsurl);
    
                try
                {
                    var isOpened = UIApplication.SharedApplication.OpenUrl(request);   //Open App
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
        }
    }
    

    我也延长了 Info.plist 按这条线

    <key>LSApplicationQueriesSchemes</key>
    <array>
       <string>facebook</string>
    </array>
    

    我不想为共享项目中的编码部分打扰您,因为这部分工作正常。

    单击应用程序中的按钮后,代码将被执行,但不会发生任何情况。甚至没有引发异常。变量的值 isOpened false .

    所以我的问题是:

    1. 当然,我的代码中有遗漏吗?
    2. 应用程序有什么要求吗?应该打开哪个?
    3. iOS中是否需要某些配置?
    1 回复  |  直到 6 年前
        1
  •  1
  •   Vishal D Aher    6 年前

    尝试使用 Device.OpenUri(new Uri("fb://"));

    你也可以参考 xamarin how to open facebook and twitter app from my ios app by a button