我已經通過NuGet從版本4.2.0更新到MvvmCross 4.2.1版,現在Android項目在啓動過程中崩潰。一個MvxException
是閃屏與消息時拋出:在使用DownloadCache之前,您必須在File插件上調用EnsureLoaded
MvvmCross.Platform.Exceptions.MvxException:使用DownloadCache
我其實調用此之前,你必須調用EnsureLoaded 上的文件的插件方法在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
,因爲那裏我會得到一個異常無法解析類型MvvmCross.Platform.Plugins.IMvxPluginManager
當調用InitializePluginFramework
時,MvxSetup.InitializePluginFramework
似乎會拋出此異常。
的NuGet顯示錯誤消息我在更新過程中已安裝的每個插件:
[失效]無法提交文件」 ... \ Project.Droid \ Bootstap \ XXXBootstrap.cs'
文件肯定存在,並且安裝該軟件包時不報告錯誤。
解決此問題的正確方法是什麼?
這似乎解決了這個問題。 –
好吧,通過從Bootstrap文件夾中刪除上述文件並明確定義方法InitializeLastChance()中的加載順序,它似乎解決了問題。關於InitializeLastChance的更多信息,可以在[個人定製](https:// github。com/MvvmCross/MvvmCross/wiki/Customizing-using-App-and-Setup) – JohnnyJaxs
對於那些現在面臨MvxException的用戶:找不到類型爲MvvmCross.Plugins.File.PluginLoader的插件加載器, //github.com/MvvmCross/MvvmCross-Plugins/issues/119#issuecomment-233129197 – foxanna