我正在使用(出色的)Prism库构建Xamarin Forms应用程序。我想利用Xamarin.Essentials.Connectivity类来检测网络连接的变化。
当前,我在View模型的基类中处理Connectivity.ConnectivityChanged事件,特别是以便在应用恢复/休眠时可以添加/删除事件处理程序(这显然是最佳实践)。
为此,我使视图模型基类实现IApplicationLifecycleAware。
但是……。
这并不适合我,我想将连接功能引入服务,然后将服务注入需要它的视图模型中。
如果执行此操作,如何检测应用何时处于睡眠状态或在服务中恢复运行,以便可以添加/删除(在服务中)事件处理程序?
我认为我可以将App对象注入服务或使用App。该服务是最新的服务,但是这两种方法都不会让我陷入“睡眠/恢复”事件。