setAppName method

  1. @override
Future<String?> setAppName({
  1. required String appName,
})
override

Changes the app name in the Android Manifest file to the provided appName. Parameters:

  • appName: The new name to be set for the application. Returns: Future<String?>, a success message indicating the change in application name.

Implementation

@override
Future<String?> setAppName({required String appName}) async {
  final filePath = androidManifestPath;
  List? contentLineByLine = await readFileAsLineByline(
    filePath: filePath,
  );
  for (var i = 0; i < contentLineByLine.length; i++) {
    if (contentLineByLine[i].contains('android:label=')) {
      contentLineByLine[i] = contentLineByLine[i].toString().replaceFirst(
          RegExp(r'android:label="(.*?)"'), 'android:label="$appName"');
      break;
    }
  }
  final message = await super.setAppName(appName: appName);
  var writtenFile = await writeFile(
    filePath: filePath,
    content: contentLineByLine.join('\n'),
  );
  return message;
}