Внедрение зависимостей Xamarin.Forms без инициализации приложения - PullRequest
0 голосов
/ 04 мая 2019

Это кажется сложным для объяснения, но, возможно, мне нужно перестроить архитектуру моего приложения.Я использую Unity для своего приложения DI и инициализирую его так:

 IServiceLocator serviceLocator = new UnityServiceLocator(container);
 ServiceLocator.SetLocatorProvider(() => serviceLocator);

в конструкторе приложений, и все работает нормально.Вот проблема.Мое приложение использует Android Alarm Manager для реагирования на намерения, и во время обработки намерения приложение Xamarin.Forms может не инициализироваться, поэтому в этот момент я не могу получить доступ к ServiceLocator.Я получаю сообщение об ошибке: «ServiceLocationProvider должен быть установлен».Итак, мой вопрос заключается в следующем: есть ли способ инициализации моего serviceLocator независимо от моего приложения Xamarin.Forms?Или мне нужно переосмыслить дизайн моего приложения.

...