validateEnvironmentMismatch method
Implementation
bool validateEnvironmentMismatch(FirebaseEnvConfig config) {
try {
final content = File(config.androidConfig).readAsStringSync();
final data = jsonDecode(content);
// Validation 1: Android Package Name Match
final clients = data['client'] as List?;
if (clients != null && clients.isNotEmpty) {
final packageNames = clients.map((c) => c['client_info']?['android_client_info']?['package_name']).toList();
if (!packageNames.contains(config.androidApplicationId)) {
logger.warning('IMPROTANT: The android_application_id "${config.androidApplicationId}" was not found in ${config.androidConfig}. Available: ${packageNames.join(', ')}');
} else {
logger.success('Verified: Android Application ID matches configuration.');
}
}
return true;
} catch (e) {
logger.warning('Deep content validation skipped: $e');
return true;
}
}