launchAvd function

Future<void> launchAvd(
  1. String? name, {
  2. List<String>? extraArgs,
})

Launches the given AVD with optional flags

Implementation

Future<void> launchAvd(String? name, {List<String>? extraArgs}) async {
  final shell = Shell();

  if (name == null) {
    final avds = await listAvds();
    if (avds.isEmpty) {
      print('❌ No AVDs found.');
      return;
    }
    name = await promptAvdSelection(avds);
    if (name == null) return;
  }

  print('🚀 Launching AVD "$name"...');

  final args = [
    '-avd',
    name,
    ...?extraArgs,
  ];

  try {
    await shell.run('emulator ${args.join(' ')}');
  } catch (e) {
    print('❌ Failed to launch AVD "$name": $e');
  }
}