在Xamarin Forms上使用Android Oreo 8.1的System.BadImageFormat异常

时间:2018-04-07 17:06:58

标签: c# android xamarin.forms

非常感谢任何有关以下错误的帮助。

我正在尝试构建和部署我的Xamarin Forms应用的Android版本。

我已应用以下环境/包:

  • .NetStandard 2.0。
  • Xamarin.Android支持库27.0.2。
  • 目标Android版本8.1。
  • 使用Android 8.1版进行编译。
  • SDK仅链接。

每次我尝试在发布模式下部署应用时,都会抛出以下异常:

System.BadImageFormatException:无法解析字段标记0x04000033,原因是:无法加载字段类型MyApp.Droid.MainApplication +<> c:<> 9__1_0' (1)由于:无法加载文件或程序集System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a'或其中一个依赖项。 assembly:System.Runtime,Version = 4.0.0.0,Culture = neutral,PublicKeyToken = b03f5f7f11d50a3a类型:成员:assembly:MyApp.Droid.dll类型:<> c成员:

每当我将链接选项更改为none时,应用程序运行都没有问题。所以最初我尝试了很多方法来尝试跳过链接程序集(例如,我已经在Android选项页面上添加了完整的程序集列表,并使用了[Android.Runtime.Preserve]),但这些都没有工作。最好将链接选项保留为SDK,因为这样可以使.apk保持合理的大小。

另一点 - 该应用程序在Android 8.0上运行没有问题,但同样,如果可能的话,我想在Android 8.1上运行它。

有人知道如何克服这个错误吗?

非常感谢。

0 个答案:

没有答案