在发布模式或ad-hoc模式下编译时出错,Xamarin Forms iOS,

时间:2017-11-30 00:30:37

标签: ios xamarin xamarin.ios xamarin.forms

我在xamarin表单中出现错误ios,它只在发布模式或Ad-Hoc模式下发生,如果应用程序有效,在调试模式下,为什么会这样?

  

错误无法解析“System.Reflection.Emit.DynamicMethod”   来自“mscorlib,Version = 4.0.0.0,Culture = neutral,   PublicKeyToken = b77a5c561934e089“TuFacturadorApp.iOSCompilación

1 个答案:

答案 0 :(得分:2)

您需要确定哪些代码/包正在提取该代码,因为您无法在发布配置iOS版本中使用Reflection.Emit

注意:还要确保您的版本配置的链接器设置设置为"不要链接"

  

无动态代码生成

     

由于iPhone内核阻止应用程序动态生成代码,因此iPhone上的Mono不支持任何形式的动态代码生成。其中包括:

     
      
  • System.Reflection.Emit不可用。
  •   
  • 不支持System.Runtime.Remoting。
  •   
  • 不支持动态创建类型(没有Type.GetType(" MyType`1")),尽管查找现有类型(Type.GetType(" System.String"))工作得很好)。   必须在编译时向运行时注册反向回调。
  •   

re:https://developer.xamarin.com/guides/ios/advanced_topics/limitations/#No_Dynamic_Code_Generation