FlutterBuild constructor

FlutterBuild({
  1. String? appName,
  2. String? appVersion,
  3. String? buildVersion,
  4. String? buildPreRelease,
  5. String? buildMetadata,
  6. String? mainPath,
  7. String? flavor,
  8. List<String> buildArgs = const [],
  9. bool installDeps = true,
  10. String? releaseFolder,
  11. String? flutterSdkPath,
})

Implementation

FlutterBuild({
  String? appName,
  String? appVersion,
  String? buildVersion,
  String? buildPreRelease,
  String? buildMetadata,
  this.mainPath,
  this.flavor,
  this.buildArgs = const [],
  this.installDeps = true,
  String? releaseFolder,
  String? flutterSdkPath,
})  : flutterSdkPath = flutterSdkPath ?? 'flutter',
      releaseFolder = releaseFolder ?? 'build/releases' {
  final pubspecStr = File('pubspec.yaml').readAsStringSync();
  final pubspec = Pubspec.parse(pubspecStr);

  this.buildVersion = resolveVersion(
    pubspecVersion: pubspec.version,
    appVersion: appVersion,
    buildVersion: buildVersion,
    buildPreRelease: buildPreRelease,
    buildMetadata: buildMetadata,
  );

  if (appVersion != null) {
    this.appVersion = appVersion;
  } else {
    this.appVersion = 'v${this.buildVersion.canonicalizedVersion}';
  }

  if (appName == null) {
    this.appName = pubspec.name;
  } else {
    this.appName = appName;
  }
}