在Xamarin iOS项目中使用Swift框架内的Objective C框架

时间:2019-05-25 19:27:00

标签: xamarin.ios swift-framework objective-c-framework

  • 我有一个Objective C框架。 (该框架可以在Swift项目中正常工作)
  • 然后我有一个Swift框架。该框架使用了前面提到的Objective C框架。 (此Swift框架也可用于Swift项目)
  • 现在,我正在尝试在Xamarin iOS项目中使用该Swift框架。
  • 我已经在Xamarin iOS项目中创建了一个绑定库项目,并在“本机参考”下添加了这些Swift框架和Objective C框架胖文件。
  • 我也相应地更新了ApiDefinition文件。

但是,当我运行该应用程序时,它会在手机中启动并退出,而不会出现任何错误。如果应用程序因错误而崩溃,我感到很高兴。但事实并非如此,我现在一无所知。有什么想法吗?

下面是我尝试访问Xamarin iOS项目内那些框架中的方法的方式

using BindingSwift;
// More codes here

        public override void ViewDidLoad()
        {
            base.ViewDidLoad();

            var myClass = new AroshaMathPerformer();
            var result = myClass.DoTheMath;
            Console.WriteLine("# Result = " + result);
        }

但是,如果我添加一个断点,它甚至在应用程序退出前的运行时都没有命中。

2 个答案:

答案 0 :(得分:0)

假设您所做的一切都存在于问题中,那么它应该不会起作用。 Xamarin.iOS上不正式支持Swift库。有些人使他们可以执行以下步骤:https://medium.com/@Flash3001/binding-swift-libraries-xamarin-ios-ff32adbc7c76

答案 1 :(得分:0)

在这种情况下,您可以通过

找到真正的原因。
  

设置->隐私->分析->分析数据->并找到日志   包ID和崩溃的文件发生的日期/时间。

显示给我的错误与 @rpath / 有关,但实际上是在使用有效的配置文件对分发包进行签名后解决的。

对于感兴趣的人,您可以访问here,以了解我实现标题中提到的整个方案的经验。