Я создаю приложение Xamarin Forms с использованием (превосходной) библиотеки Prism. Я хочу использовать класс Xamarin.Essentials.Connectivity для обнаружения изменений в подключении к сети.
В настоящее время я обрабатываю события Connectivity.ConnectivityChanged в базовом классе для своих моделей просмотра, в частности, чтобы я мог добавлять / удалять обработчик событий, когда приложение возобновляет работу / спит (что, очевидно, является наилучшей практикой).
Для этого я заставляю базовый класс модели представления реализовать IApplicationLifecycleAware.
Однако ....
Это не подходит мне, и я хотел бы перенести функцию подключения в службу, а затем внедрить службу в модели представления, которые в ней нуждаются.
Если я сделаю это, как мне определить, когда приложение спит или возобновляет работу в службе, чтобы я мог добавить / удалить обработчики событий (в службе)?
Я думал, что смогу внедрить объект App в сервис или использовать App. Текущий в службе, но ни один подход не позволил бы мне подключиться к событиям Sleep / Resume.