构建Xamarin.Android不适用于AOT

时间:2016-11-02 17:52:58

标签: android xamarin xamarin.android xamarin.forms

我创建了新项目xamarin表单可用。 我没有在项目中添加其他代码。

当我用AOT选项构建Android项目时,我收到错误:

[AOT] E:\works\xamarin\projects\TestAot\TestAot\TestAot.Droid\obj\Release\android\assets\TestAot.Droid.dll
Could not AOT the assembly: obj\Release\android\assets\TestAot.Droid.dll

Xamarin.VS和Android SDK已更新至上一版本。

如何解决? 谢谢。

2 个答案:

答案 0 :(得分:2)

面对的是,如果同时启用llvm和aot,则只会出现上述错误。有人说,当您在64位Windows上进行编译时会发生这种情况,而在云中进行编译则可以正常工作。无论如何,有一个解决方案,基本上禁用了'embedassembliesintoapk':

enter image description here

以上设置对我来说很好。

请考虑aot + llvm可以使应用程序启动时间比单独使用aot更长。

积分:https://forums.xamarin.com/discussion/comment/302015/#Comment_302015

答案 1 :(得分:0)

AOT仍然是实验性的。因此,结果可能会变得不稳定或处于不工作状态。

https://developer.xamarin.com/releases/android/xamarin.android_5/xamarin.android_5.1/#AOT_Support

  

AOT和AOT + LLVM支持一直是实验性的。已经发现AOT + LLVM支持至少没有起作用,因为至少Xamarin.Android 6.0; AOT + LLVM编译器已执行但未执行任何操作。在QA期间,确定在尝试修复“AOT + LLVM没有做任何事情”问题时,AOT + LLVM编译器反而崩溃了。

     

因此,Xamarin.Android 6.1版本中已禁用AOT + LLVM支持。它将在未来的版本中重新启用。

https://developer.xamarin.com/releases/android/xamarin.android_6/xamarin.android_6.1/