MvvmCross инициализирует Io C Provider в методе InitializePrimary (), определенном в MvxSetup (https://github.com/MvvmCross/MvvmCross/blob/44a37969059a81f26883c193a5ecf7f2ec88c9d8/MvvmCross/Core/MvxSetup.cs#L70)
После стека вызовов оттуда этот метод в конечном итоге вызывается косвенно этой строкой в методе FinishedLaunching:
MvxIosSetupSingleton.EnsureSingletonAvailable(this, Window).EnsureInitialized()
Таким образом, самая ранняя точка, в которой вы можете получить доступ к службе IMvxLog через поставщика Io C, находится в FinishedLaunching после вызова метода base.FinishedLaunching ().
Похоже, UIWindow является зависимостью для инициализации MvvmCross, поэтому вы не сможете переместить встроенную инициализацию Io C раньше этого. Возможно, вам потребуется инициализировать объект вручную, а затем зарегистрировать этот экземпляр после инициализации Io C