debugRemoteConfigWeb function

Future<void> debugRemoteConfigWeb()

Debug Remote Config specifically for web platform issues

Implementation

Future<void> debugRemoteConfigWeb() async {
  if (!kIsWeb) {
    logd('❌ This debug function is only for web platform');
    return;
  }

  logd('🌐 === DEBUG REMOTE CONFIG FOR WEB ===');

  try {
    // 1. Check Firebase instance and project
    final instance = FirebaseRemoteConfig.instance;
    final app = instance.app;
    logd('πŸ”₯ Firebase project: ${app.options.projectId}');
    logd('πŸ”₯ Firebase app name: ${app.name}');
    logd('πŸ”₯ Remote Config instance: ${instance.hashCode}');

    // 2. Check fetch status
    final lastFetchTime = instance.lastFetchTime;
    final lastFetchStatus = instance.lastFetchStatus;
    logd('πŸ“… Last fetch time: $lastFetchTime');
    logd('πŸ“Š Last fetch status: $lastFetchStatus');

    // 3. Check defaults are set
    final testDefault = instance.getString('minimumAppVersionRecommendedApple');
    logd('πŸ“± Default value for minimumAppVersionRecommendedApple: "$testDefault"');

    // 4. Check all version-related values
    await _logAllVersionValues();

    // 5. Check value sources
    await _logValueSources();

    // 6. Test manual fetch (web-specific)
    await _testWebFetch();

    // 7. Check dependency injection
    await _testDependencyInjection();

    // 8. Check AppConfigBase values
    await _testAppConfigBaseValues();
  } catch (e) {
    loge('❌ Error during web debug: $e');
  }

  logd('🌐 === END DEBUG REMOTE CONFIG FOR WEB ===');
}