我已经通过NuGet从4.2.0版本更新到MvvmCross 4.2.1版本,现在Android项目在启动过程中崩溃了。在初始屏幕期间,将显示MvxException并显示以下消息:



我实际上是在MvxAppCompatSetup.InitializeLastChance覆盖中调用此方法。这对于4.2.0版来说对我来说效果很好,但是现在在运行4.2.1版时,该代码甚至都没有命中InitializeLastChance

protected override void InitializeLastChance()
{
    base.InitializeLastChance();
    MvvmCross.Plugins.File.PluginLoader.Instance.EnsureLoaded();
    MvvmCross.Plugins.DownloadCache.PluginLoader.Instance.EnsureLoaded();
}

我无法将EnsureLoaded调用移到InitializeFirstChance,因为那里会因为插件尚未初始化而出现异常



调用MvxSetup.InitializePluginFramework时,InitializePluginFramework似乎引发了此异常。

NuGet显示了我在更新期间安装的每个插件的错误消息:



这些文件肯定存在,并且该软件包在安装时不会报告错误。

解决此问题的正确方法是什么?

最佳答案

尝试删除DownloadCachePluginBootstrap.cs和FilePluginBootstrap.cs只是将手动设置保留在InitializeLastChance()中。加载顺序似乎有问题。

10-07 22:08