我需要在我的ProcessLifecycleOwner
方法中注册Xamarin.Android Architecture Components,如Application.OnCreate
所述。
但它导致6.2.2
版本的MvvmCross
错误:
MvvmCross.Exceptions.MvxIoCResolveException
:无法解决类型MvvmCross.ViewModels.IMvxAppStart
发生
或者只是用Splash Screen
卡在6.2.3
上。
这些问题是由Xamarin.Android mvvmcross app crashes when launching with intent filter的建议解决的。
[Application]
public class App : MvxAndroidApplication<Setup, Core.App>
{
public App(IntPtr reference, JniHandleOwnership transfer) :
base(reference, transfer) { }
public override void OnCreate()
{
MvxAndroidSetupSingleton
.EnsureSingletonAvailable(ApplicationContext)
.EnsureInitialized();
base.OnCreate();
}
}
然而qazxsw poi也消失了,只剩下来自qazxsw poi的蓝色背景。
我找到了一个解决方法:
Splash Screen
但由于并行性,它不可靠,有时可行,有时会崩溃。
如何恢复default theme
?
您的方法很可能在UI线程上阻塞,导致UI在预期的启动屏幕显示的时间内阻塞。
尝试使用异步事件处理程序来允许非阻塞UI调用
public override void OnCreate()
{
Task.Run(() => MvxAndroidSetupSingleton
.EnsureSingletonAvailable(ApplicationContext)
.EnsureInitialized());
base.OnCreate();
}