dispose method

void dispose()

Clean up resources

Implementation

void dispose() {
  if (_lifecycleObserver != null) {
    // Only remove observer if WidgetsBinding is initialized
    // This allows pure DI tests without requiring Flutter bindings
    try {
      WidgetsBinding.instance.removeObserver(_lifecycleObserver!);
    } catch (_) {
      // WidgetsBinding not initialized - nothing to remove
    }
    _lifecycleObserver = null;
  }
  _lifecycleListeners.clear();
}