在使用DownloadCache之前,必须在File插件上调用EnsureLoaded

Tre*_*com 8 mvvmcross

我已经通过NuGet从版本4.2.0更新到MvvmCross版本4.2.1,现在Android项目在启动时崩溃了.一个MvxException闪屏与消息中被抛出:

MvvmCross.Platform.Exceptions.MvxException:在使用DownloadCache之前,必须在File插件上调用EnsureLoaded

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

protected override void InitializeLastChance()
{
    base.InitializeLastChance();
    MvvmCross.Plugins.File.PluginLoader.Instance.EnsureLoaded();
    MvvmCross.Plugins.DownloadCache.PluginLoader.Instance.EnsureLoaded();
}
Run Code Online (Sandbox Code Playgroud)

我无法移动EnsureLoaded调用,InitializeFirstChance因为我会得到一个例外,因为插件尚未初始化

无法解析类型MvvmCross.Platform.Plugins.IMvxPluginManager

MvxSetup.InitializePluginFramework出现的时候抛这个异常InitializePluginFramework被调用.

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

[失败]无法归档文件'...\Project.Droid\Bootstap\XXXBootstrap.cs'

文件肯定存在,软件包安装时不报告错误.

处理这个问题的正确方法是什么?

小智 5

尝试删除DownloadCachePluginBootstrap.cs和FilePluginBootstrap.cs只需将手动设置保留在InitializeLastChance()中.加载订单似乎存在问题.