make method

  1. @override
Future<MakeResult> make(
  1. Directory appDirectory, {
  2. required Directory outputDirectory,
  3. Map<String, dynamic>? makeArguments,
  4. void onProcessStdOut(
    1. List<int> data
    )?,
  5. void onProcessStdErr(
    1. List<int> data
    )?,
})

Implementation

@override
Future<MakeResult> make(
  Directory appDirectory, {
  required Directory outputDirectory,
  Map<String, dynamic>? makeArguments,
  void Function(List<int> data)? onProcessStdOut,
  void Function(List<int> data)? onProcessStdErr,
}) async {
  MakeConfig makeConfig = await loadMakeConfig(
    outputDirectory,
    makeArguments,
  );

  File apkFile = appDirectory
      .listSync()
      .where((e) {
        if (makeConfig.flavor != null) {
          return e.path.endsWith(
            '${makeConfig.flavor}-release.$packageFormat',
          );
        }
        return e.path.endsWith('-release.$packageFormat');
      })
      .map((e) => File(e.path))
      .first;

  apkFile.copySync(makeConfig.outputFile.path);

  return MakeResult(makeConfig);
}