checkKotlinExtension method

Future<void> checkKotlinExtension()

Check if Kotlin Android extensions plugin is being used (deprecated)

Implementation

Future<void> checkKotlinExtension() async {
  final appBuildGradlePath = FileSystemUtils.findAppBuildGradle(androidDir);
  if (appBuildGradlePath == null) {
    // We already report this in GradleDoctor, so we don't duplicate the issue
    return;
  }

  final content = await FileSystemUtils.readFile(appBuildGradlePath);
  final RegExp kotlinExtensionRegex = RegExp('kotlin-android-extensions');
  final hasKotlinExtension = kotlinExtensionRegex.hasMatch(content);

  if (hasKotlinExtension) {
    issues.add(
      IssueModel(
        filePath: appBuildGradlePath,
        description: 'Kotlin Android Extensions plugin is deprecated',
        currentValue: 'kotlin-android-extensions',
        recommendedValue:
            'Remove and migrate to ViewBinding/Parcelize plugins',
      ),
    );
  }
}