droid-cli 1.6.2 → 1.7.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,135 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.screenshotCommand = screenshotCommand;
4
+ const logger_1 = require("../ui/logger");
5
+ const adb_1 = require("../core/adb");
6
+ const config_manager_1 = require("../config/config-manager");
7
+ const screenshot_1 = require("../core/screenshot");
8
+ const prompts_1 = require("@inquirer/prompts");
9
+ async function screenshotCommand(options = {}) {
10
+ try {
11
+ logger_1.Logger.step('📸 Taking screenshot of Android device...');
12
+ // Load configuration
13
+ const configManager = config_manager_1.ConfigManager.getInstance();
14
+ const config = await configManager.load();
15
+ // Get ADB manager and check devices
16
+ const adbManager = adb_1.AdbManager.getInstance();
17
+ const devices = await adbManager.getDevices();
18
+ const availableDevices = adbManager.getAvailableDevices();
19
+ if (availableDevices.length === 0) {
20
+ logger_1.Logger.error('No devices available. Please connect a device or start an emulator.');
21
+ process.exit(1);
22
+ }
23
+ // Determine target device
24
+ let targetDeviceId = options.device || config.selectedDevice;
25
+ if (!targetDeviceId || !availableDevices.find(d => d.id === targetDeviceId)) {
26
+ if (availableDevices.length === 1) {
27
+ targetDeviceId = availableDevices[0].id;
28
+ logger_1.Logger.info(`Using device: ${availableDevices[0].name} (${targetDeviceId})`);
29
+ }
30
+ else {
31
+ // Let user select device
32
+ const deviceChoices = availableDevices.map(device => ({
33
+ name: `${device.name} (${device.id}) - API ${device.apiLevel || 'Unknown'}`,
34
+ value: device.id,
35
+ }));
36
+ targetDeviceId = await (0, prompts_1.select)({
37
+ message: 'Select device for screenshot:',
38
+ choices: deviceChoices,
39
+ });
40
+ }
41
+ }
42
+ const targetDevice = adbManager.getDeviceById(targetDeviceId);
43
+ if (!targetDevice) {
44
+ logger_1.Logger.error(`Device ${targetDeviceId} not found or not available.`);
45
+ process.exit(1);
46
+ }
47
+ logger_1.Logger.device(`Target device: ${targetDevice.name} (${targetDevice.id})`);
48
+ // Get ScreenshotManager
49
+ const screenshotManager = screenshot_1.ScreenshotManager.getInstance();
50
+ // Prepare screenshot options
51
+ const screenshotOptions = {
52
+ deviceId: targetDevice.id,
53
+ outputDir: options.output,
54
+ copyToClipboard: options.copy !== false, // Default to true unless explicitly false
55
+ };
56
+ console.log(''); // Add spacing
57
+ logger_1.Logger.info('📸 Capturing screenshot...');
58
+ // Take screenshot
59
+ const result = await screenshotManager.takeScreenshot(screenshotOptions);
60
+ if (result.success) {
61
+ console.log(''); // Add spacing
62
+ logger_1.Logger.success('📸 Screenshot captured successfully!');
63
+ if (result.copiedToClipboard) {
64
+ logger_1.Logger.success('📋 Screenshot copied to clipboard');
65
+ logger_1.Logger.info('💡 You can now paste it directly into your AI chat or image editor');
66
+ }
67
+ if (result.filePath) {
68
+ logger_1.Logger.info(`📁 Saved to: ${result.filePath}`);
69
+ // Show recent screenshots
70
+ const recentScreenshots = await screenshotManager.getScreenshotHistory(5);
71
+ if (recentScreenshots.length > 1) {
72
+ logger_1.Logger.info(`📚 Recent screenshots (${recentScreenshots.length}):`);
73
+ recentScreenshots.slice(0, 3).forEach((screenshot, index) => {
74
+ const filename = screenshot.split('/').pop();
75
+ logger_1.Logger.info(` ${index + 1}. ${filename}`);
76
+ });
77
+ }
78
+ }
79
+ // Options for what to do next
80
+ console.log(''); // Add spacing
81
+ const nextAction = await (0, prompts_1.select)({
82
+ message: 'What would you like to do next?',
83
+ choices: [
84
+ { name: '📁 Open screenshots folder', value: 'open' },
85
+ { name: '📸 Take another screenshot', value: 'another' },
86
+ { name: '🔄 Copy to clipboard again', value: 'copy' },
87
+ { name: '✅ Done', value: 'done' },
88
+ ],
89
+ });
90
+ switch (nextAction) {
91
+ case 'open':
92
+ await screenshotManager.openScreenshotDir(result.filePath);
93
+ break;
94
+ case 'another':
95
+ console.log(''); // Add spacing
96
+ await screenshotCommand(options); // Recursive call
97
+ break;
98
+ case 'copy':
99
+ if (result.filePath) {
100
+ const copyResult = await screenshotManager.takeScreenshot({
101
+ ...screenshotOptions,
102
+ copyToClipboard: true,
103
+ });
104
+ if (copyResult.copiedToClipboard) {
105
+ logger_1.Logger.success('📋 Screenshot copied to clipboard');
106
+ }
107
+ else {
108
+ logger_1.Logger.warn('📋 Failed to copy to clipboard');
109
+ }
110
+ }
111
+ break;
112
+ case 'done':
113
+ break;
114
+ }
115
+ }
116
+ else {
117
+ console.log(''); // Add spacing
118
+ logger_1.Logger.error(`📸 Screenshot failed: ${result.error}`);
119
+ // Provide troubleshooting help
120
+ console.log(''); // Add spacing
121
+ logger_1.Logger.info('💡 Troubleshooting:');
122
+ logger_1.Logger.info(' • Check device is connected: adb devices');
123
+ logger_1.Logger.info(' • Enable USB debugging on your device');
124
+ logger_1.Logger.info(' • Try with a different device or emulator');
125
+ logger_1.Logger.info(' • Ensure device screen is unlocked');
126
+ }
127
+ console.log(''); // Add spacing
128
+ logger_1.Logger.info('📸 Screenshot command completed');
129
+ }
130
+ catch (error) {
131
+ logger_1.Logger.error('Screenshot command failed:', error);
132
+ process.exit(1);
133
+ }
134
+ }
135
+ //# sourceMappingURL=screenshot.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"screenshot.js","sourceRoot":"","sources":["../../src/commands/screenshot.ts"],"names":[],"mappings":"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"}
@@ -34,12 +34,11 @@ export declare class AdbManager {
34
34
  } | null>;
35
35
  private formatBytes;
36
36
  killApp(deviceId: string, packageName: string): Promise<boolean>;
37
- launchApp(deviceId: string, packageName: string, activityName?: string): Promise<boolean>;
38
- restartApp(deviceId: string, packageName: string, activityName?: string): Promise<boolean>;
39
- private getMainActivity;
40
- private activityExists;
37
+ launchApp(deviceId: string, packageName: string, basePackageName?: string): Promise<boolean>;
38
+ restartApp(deviceId: string, packageName: string, basePackageName?: string): Promise<boolean>;
41
39
  clearAppData(deviceId: string, packageName: string): Promise<boolean>;
42
- clearAppDataAndRestart(deviceId: string, packageName: string, activityName?: string): Promise<boolean>;
40
+ clearAppDataAndRestart(deviceId: string, packageName: string, basePackageName?: string): Promise<boolean>;
41
+ private launchAppAlternative;
43
42
  getDeviceById(deviceId: string): AndroidDevice | null;
44
43
  getAvailableDevices(): AndroidDevice[];
45
44
  getPhysicalDevices(): AndroidDevice[];
@@ -1 +1 @@
1
- {"version":3,"file":"adb.d.ts","sourceRoot":"","sources":["../../src/core/adb.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,sBAAsB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,aAAa,GAAG,SAAS,CAAC;IAC3G,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC;IAC7C,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAa;IACpC,OAAO,CAAC,OAAO,CAAuB;IAEtC,MAAM,CAAC,WAAW,IAAI,UAAU;IAO1B,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQrC,UAAU,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAwB9B,gBAAgB;YA4ChB,aAAa;YAiBb,mBAAmB;IAiC3B,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsC3E,OAAO,CAAC,mBAAmB;IA+CrB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BrE,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiC5F,OAAO,CAAC,WAAW;IAQb,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BhE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAmCzF,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YA0BlF,eAAe;YAkCf,cAAc;IAatB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BrE,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA4B5G,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAIrD,mBAAmB,IAAI,aAAa,EAAE;IAItC,kBAAkB,IAAI,aAAa,EAAE;IAIrC,mBAAmB,IAAI,aAAa,EAAE;IAIhC,qBAAqB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA8BrD,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6CrD,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BpE,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;CAG/C"}
1
+ {"version":3,"file":"adb.d.ts","sourceRoot":"","sources":["../../src/core/adb.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,sBAAsB,GAAG,mBAAmB,GAAG,mBAAmB,GAAG,aAAa,GAAG,SAAS,CAAC;IAC3G,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC;IAC7C,IAAI,EAAE,UAAU,GAAG,QAAQ,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;CACrB;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAa;IACpC,OAAO,CAAC,OAAO,CAAuB;IAEtC,MAAM,CAAC,WAAW,IAAI,UAAU;IAO1B,iBAAiB,IAAI,OAAO,CAAC,OAAO,CAAC;IAQrC,UAAU,IAAI,OAAO,CAAC,aAAa,EAAE,CAAC;YAwB9B,gBAAgB;YA4ChB,aAAa;YAiBb,mBAAmB;IAiC3B,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,CAAC;IAsC3E,OAAO,CAAC,mBAAmB;IA+CrB,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA0BrE,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;IAiC5F,OAAO,CAAC,WAAW;IAQb,OAAO,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BhE,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAkC5F,UAAU,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA2B7F,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAoDrE,sBAAsB,CAAC,QAAQ,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;YAoDjG,oBAAoB;IAkClC,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,aAAa,GAAG,IAAI;IAIrD,mBAAmB,IAAI,aAAa,EAAE;IAItC,kBAAkB,IAAI,aAAa,EAAE;IAIrC,mBAAmB,IAAI,aAAa,EAAE;IAIhC,qBAAqB,IAAI,OAAO,CAAC,iBAAiB,EAAE,CAAC;IA8BrD,aAAa,CAAC,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IA6CrD,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,OAAO,CAAC;IA2BpE,oBAAoB,IAAI,OAAO,CAAC,OAAO,CAAC;CAG/C"}
package/dist/core/adb.js CHANGED
@@ -279,17 +279,17 @@ class AdbManager {
279
279
  return false;
280
280
  }
281
281
  }
282
- async launchApp(deviceId, packageName, activityName) {
282
+ async launchApp(deviceId, packageName, basePackageName) {
283
283
  if (!(await this.checkAdbAvailable())) {
284
284
  return false;
285
285
  }
286
286
  try {
287
- const activity = activityName || await this.getMainActivity(deviceId, packageName);
288
- if (!activity) {
289
- logger_1.Logger.error(`Could not find main activity for ${packageName}`);
290
- return false;
291
- }
287
+ // Use the base package name for the activity class if provided
288
+ // This handles cases where applicationIdSuffix is used (e.g., .dev, .staging)
289
+ const activityPackage = basePackageName || packageName;
290
+ const activity = `${activityPackage}.MainActivity`;
292
291
  logger_1.Logger.info(`Launching ${packageName} on ${deviceId}...`);
292
+ logger_1.Logger.debug(`Activity: ${packageName}/${activity}`);
293
293
  const result = await process_1.ProcessManager.run('adb', [
294
294
  '-s', deviceId,
295
295
  'shell', 'am', 'start',
@@ -310,7 +310,7 @@ class AdbManager {
310
310
  return false;
311
311
  }
312
312
  }
313
- async restartApp(deviceId, packageName, activityName) {
313
+ async restartApp(deviceId, packageName, basePackageName) {
314
314
  logger_1.Logger.info(`Restarting ${packageName} on ${deviceId}...`);
315
315
  // First kill the app (ignore failure - app might not be running)
316
316
  const killSuccess = await this.killApp(deviceId, packageName);
@@ -323,7 +323,7 @@ class AdbManager {
323
323
  // Small delay to ensure the app is fully stopped
324
324
  await new Promise(resolve => setTimeout(resolve, 500));
325
325
  // Then launch it again
326
- const launchSuccess = await this.launchApp(deviceId, packageName, activityName);
326
+ const launchSuccess = await this.launchApp(deviceId, packageName, basePackageName);
327
327
  if (launchSuccess) {
328
328
  logger_1.Logger.success(`App restarted successfully on ${deviceId}`);
329
329
  return true;
@@ -333,65 +333,42 @@ class AdbManager {
333
333
  return false;
334
334
  }
335
335
  }
336
- async getMainActivity(deviceId, packageName) {
337
- try {
338
- const result = await process_1.ProcessManager.run('adb', [
339
- '-s', deviceId,
340
- 'shell', 'pm', 'dump', packageName
341
- ]);
342
- if (result.success) {
343
- const lines = result.stdout.split('\n');
344
- for (const line of lines) {
345
- if (line.includes('android.intent.action.MAIN')) {
346
- const activityMatch = line.match(/([a-zA-Z0-9._]+\/[a-zA-Z0-9._]+)/);
347
- if (activityMatch) {
348
- return activityMatch[1].split('/')[1];
349
- }
350
- }
351
- }
352
- }
353
- }
354
- catch (error) {
355
- logger_1.Logger.debug(`Failed to get main activity for ${packageName}:`, error);
356
- }
357
- // Fallback to common activity names
358
- const commonActivities = ['.MainActivity', '.Main', '.HomeActivity'];
359
- for (const activity of commonActivities) {
360
- // Simply try to launch with the common activity name
361
- // The launch will fail gracefully if the activity doesn't exist
362
- logger_1.Logger.debug(`Trying fallback activity: ${activity}`);
363
- return activity;
364
- }
365
- return '.MainActivity'; // Default fallback
366
- }
367
- async activityExists(deviceId, packageName, activityName) {
368
- try {
369
- const result = await process_1.ProcessManager.run('adb', [
370
- '-s', deviceId,
371
- 'shell', 'pm', 'list', 'packages', packageName
372
- ]);
373
- return result.success && result.stdout.includes(packageName);
374
- }
375
- catch {
376
- return false;
377
- }
378
- }
379
336
  async clearAppData(deviceId, packageName) {
380
337
  if (!(await this.checkAdbAvailable())) {
338
+ logger_1.Logger.error('ADB not available for clearing app data');
381
339
  return false;
382
340
  }
383
341
  try {
342
+ // First check if the package is installed
343
+ const packageCheck = await process_1.ProcessManager.run('adb', [
344
+ '-s', deviceId,
345
+ 'shell', 'pm', 'list', 'packages', packageName
346
+ ]);
347
+ logger_1.Logger.debug(`Package check result: ${packageCheck.stdout}`);
348
+ if (!packageCheck.success || !packageCheck.stdout.includes(packageName)) {
349
+ logger_1.Logger.warn(`Package ${packageName} not found on device. Skipping clear data.`);
350
+ return true; // Return true since there's nothing to clear
351
+ }
384
352
  logger_1.Logger.info(`Clearing app data for ${packageName} on ${deviceId}...`);
385
353
  const result = await process_1.ProcessManager.run('adb', [
386
354
  '-s', deviceId,
387
355
  'shell', 'pm', 'clear', packageName
388
356
  ]);
389
- if (result.success) {
357
+ logger_1.Logger.debug(`Clear app data result - exitCode: ${result.exitCode}, stdout: "${result.stdout}", stderr: "${result.stderr}"`);
358
+ // The pm clear command typically returns exit code 0 on success
359
+ if (result.exitCode === 0) {
390
360
  logger_1.Logger.success(`App data cleared for ${packageName}`);
391
361
  return true;
392
362
  }
393
363
  else {
394
- logger_1.Logger.error(`Failed to clear app data:`, result.stderr);
364
+ const output = result.stdout || result.stderr || '';
365
+ logger_1.Logger.error(`Failed to clear app data - exitCode: ${result.exitCode}`);
366
+ logger_1.Logger.error(`Output: ${output}`);
367
+ // Check for specific error messages
368
+ if (output.includes('not installed') || output.includes('Unknown package')) {
369
+ logger_1.Logger.warn('Package not installed, treating as success');
370
+ return true;
371
+ }
395
372
  return false;
396
373
  }
397
374
  }
@@ -400,26 +377,75 @@ class AdbManager {
400
377
  return false;
401
378
  }
402
379
  }
403
- async clearAppDataAndRestart(deviceId, packageName, activityName) {
380
+ async clearAppDataAndRestart(deviceId, packageName, basePackageName) {
404
381
  logger_1.Logger.info(`Clearing app data and restarting ${packageName} on ${deviceId}...`);
405
- // First kill the app to ensure clean state
406
- await this.killApp(deviceId, packageName);
407
- // Clear app data
408
- const clearSuccess = await this.clearAppData(deviceId, packageName);
409
- if (!clearSuccess) {
410
- logger_1.Logger.error('Failed to clear app data');
382
+ try {
383
+ // First kill the app to ensure clean state
384
+ logger_1.Logger.debug('Step 1: Killing app...');
385
+ const killSuccess = await this.killApp(deviceId, packageName);
386
+ logger_1.Logger.debug(`Kill app result: ${killSuccess}`);
387
+ // Clear app data
388
+ logger_1.Logger.debug('Step 2: Clearing app data...');
389
+ const clearSuccess = await this.clearAppData(deviceId, packageName);
390
+ if (!clearSuccess) {
391
+ logger_1.Logger.error('Failed to clear app data - aborting restart');
392
+ return false;
393
+ }
394
+ logger_1.Logger.debug('App data cleared successfully');
395
+ // Add a longer delay after clearing data to ensure system state is clean
396
+ logger_1.Logger.debug('Step 3: Waiting for system to stabilize...');
397
+ await new Promise(resolve => setTimeout(resolve, 2000));
398
+ // Launch the app
399
+ logger_1.Logger.debug('Step 4: Launching app...');
400
+ const launchSuccess = await this.launchApp(deviceId, packageName, basePackageName);
401
+ logger_1.Logger.debug(`Launch app result: ${launchSuccess}`);
402
+ if (launchSuccess) {
403
+ logger_1.Logger.success(`App data cleared and app restarted successfully on ${deviceId}`);
404
+ return true;
405
+ }
406
+ logger_1.Logger.error('App data cleared but failed to restart app');
407
+ // Try alternative launch methods if the first one fails
408
+ logger_1.Logger.debug('Attempting alternative launch method...');
409
+ // Try to launch with a more explicit approach
410
+ const alternativeLaunch = await this.launchAppAlternative(deviceId, packageName);
411
+ if (alternativeLaunch) {
412
+ logger_1.Logger.success('App launched successfully using alternative method');
413
+ return true;
414
+ }
411
415
  return false;
412
416
  }
413
- // Add a longer delay after clearing data
414
- await new Promise(resolve => setTimeout(resolve, 1000));
415
- // Launch the app
416
- const launchSuccess = await this.launchApp(deviceId, packageName, activityName);
417
- if (launchSuccess) {
418
- logger_1.Logger.success(`App data cleared and app restarted successfully on ${deviceId}`);
419
- return true;
417
+ catch (error) {
418
+ logger_1.Logger.error('Error in clearAppDataAndRestart:', error);
419
+ return false;
420
+ }
421
+ }
422
+ async launchAppAlternative(deviceId, packageName) {
423
+ try {
424
+ logger_1.Logger.debug('Trying to launch app with monkey command...');
425
+ // Alternative launch method using monkey
426
+ const result = await process_1.ProcessManager.run('adb', [
427
+ '-s', deviceId,
428
+ 'shell', 'monkey', '-p', packageName, '-c', 'android.intent.category.LAUNCHER', '1'
429
+ ]);
430
+ if (result.success) {
431
+ logger_1.Logger.debug('Alternative launch successful');
432
+ return true;
433
+ }
434
+ logger_1.Logger.debug('Alternative launch failed, trying AM start with action MAIN...');
435
+ // Another alternative using am start with MAIN action
436
+ const result2 = await process_1.ProcessManager.run('adb', [
437
+ '-s', deviceId,
438
+ 'shell', 'am', 'start',
439
+ '-a', 'android.intent.action.MAIN',
440
+ '-c', 'android.intent.category.LAUNCHER',
441
+ packageName
442
+ ]);
443
+ return result2.success;
444
+ }
445
+ catch (error) {
446
+ logger_1.Logger.debug('Alternative launch methods failed:', error);
447
+ return false;
420
448
  }
421
- logger_1.Logger.error('App data cleared but failed to restart app');
422
- return false;
423
449
  }
424
450
  getDeviceById(deviceId) {
425
451
  return this.devices.find(device => device.id === deviceId) || null;
@@ -1 +1 @@
1
- {"version":3,"file":"adb.js","sourceRoot":"","sources":["../../src/core/adb.ts"],"names":[],"mappings":";;;AAAA,8CAAkD;AAClD,yCAAsC;AACtC,oDAAiD;AAuBjD,MAAa,UAAU;IAAvB;QAEU,YAAO,GAAoB,EAAE,CAAC;IAqlBxC,CAAC;IAnlBC,MAAM,CAAC,WAAW;QAChB,IAAI,CAAC,UAAU,CAAC,QAAQ,EAAE,CAAC;YACzB,UAAU,CAAC,QAAQ,GAAG,IAAI,UAAU,EAAE,CAAC;QACzC,CAAC;QACD,OAAO,UAAU,CAAC,QAAQ,CAAC;IAC7B,CAAC;IAED,KAAK,CAAC,iBAAiB;QACrB,MAAM,SAAS,GAAG,MAAM,wBAAc,CAAC,YAAY,CAAC,KAAK,CAAC,CAAC;QAC3D,IAAI,CAAC,SAAS,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,gFAAgF,CAAC,CAAC;QACjG,CAAC;QACD,OAAO,SAAS,CAAC;IACnB,CAAC;IAED,KAAK,CAAC,UAAU;QACd,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,eAAM,CAAC,KAAK,CAAC,mBAAmB,CAAC,CAAC;YAClC,OAAO,EAAE,CAAC;QACZ,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC;YAElE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,eAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACtD,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,eAAM,CAAC,KAAK,CAAC,qBAAqB,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YACnD,IAAI,CAAC,OAAO,GAAG,MAAM,IAAI,CAAC,gBAAgB,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;YAC1D,eAAM,CAAC,KAAK,CAAC,iBAAiB,EAAE,IAAI,CAAC,SAAS,CAAC,IAAI,CAAC,OAAO,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;YACvE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;YAC9C,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,gBAAgB,CAAC,MAAc;QAC3C,MAAM,KAAK,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QACjC,MAAM,OAAO,GAAoB,EAAE,CAAC;QAEpC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;YACzB,mCAAmC;YACnC,IAAI,IAAI,CAAC,QAAQ,CAAC,0BAA0B,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC9D,SAAS;YACX,CAAC;YAED,gEAAgE;YAChE,8CAA8C;YAC9C,MAAM,KAAK,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;YACvC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;gBACtB,MAAM,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;gBACjC,MAAM,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,IAAI,EAA4B,CAAC;gBAExD,eAAM,CAAC,KAAK,CAAC,yBAAyB,IAAI,GAAG,CAAC,CAAC;gBAC/C,eAAM,CAAC,KAAK,CAAC,eAAe,QAAQ,cAAc,KAAK,GAAG,CAAC,CAAC;gBAE5D,IAAI,uBAAU,CAAC,eAAe,CAAC,QAAQ,CAAC,EAAE,CAAC;oBACzC,MAAM,MAAM,GAAkB;wBAC5B,EAAE,EAAE,QAAQ;wBACZ,IAAI,EAAE,MAAM,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC;wBACxC,KAAK;wBACL,IAAI,EAAE,QAAQ,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;qBAC5D,CAAC;oBAEF,mCAAmC;oBACnC,MAAM,UAAU,GAAG,MAAM,IAAI,CAAC,mBAAmB,CAAC,QAAQ,CAAC,CAAC;oBAC5D,MAAM,CAAC,QAAQ,GAAG,UAAU,CAAC,QAAQ,CAAC;oBACtC,MAAM,CAAC,KAAK,GAAG,UAAU,CAAC,KAAK,CAAC;oBAEhC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;oBACrB,eAAM,CAAC,KAAK,CAAC,iBAAiB,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,CAAC,CAAC;gBACnE,CAAC;qBAAM,CAAC;oBACN,eAAM,CAAC,KAAK,CAAC,sBAAsB,QAAQ,EAAE,CAAC,CAAC;gBACjD,CAAC;YACH,CAAC;QACH,CAAC;QAED,OAAO,OAAO,CAAC;IACjB,CAAC;IAEO,KAAK,CAAC,aAAa,CAAC,QAAgB;QAC1C,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,SAAS,EAAE,kBAAkB;aACvC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBAC3C,OAAO,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC9B,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,iCAAiC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;QACpE,CAAC;QAED,OAAO,QAAQ,CAAC;IAClB,CAAC;IAEO,KAAK,CAAC,mBAAmB,CAAC,QAAgB;QAIhD,MAAM,UAAU,GAA0C,EAAE,CAAC;QAE7D,IAAI,CAAC;YACH,gBAAgB;YAChB,MAAM,SAAS,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAChD,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,SAAS,EAAE,sBAAsB;aAC3C,CAAC,CAAC;YAEH,IAAI,SAAS,CAAC,OAAO,IAAI,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACjD,UAAU,CAAC,QAAQ,GAAG,QAAQ,CAAC,SAAS,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,EAAE,CAAC,CAAC;YAC9D,CAAC;YAED,YAAY;YACZ,MAAM,WAAW,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAClD,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,SAAS,EAAE,kBAAkB;aACvC,CAAC,CAAC;YAEH,IAAI,WAAW,CAAC,OAAO,IAAI,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,EAAE,CAAC;gBACrD,UAAU,CAAC,KAAK,GAAG,WAAW,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC;YAC/C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,gCAAgC,QAAQ,GAAG,EAAE,KAAK,CAAC,CAAC;QACnE,CAAC;QAED,OAAO,UAAU,CAAC;IACpB,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,OAAe;QAChD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,sBAAsB;gBAC7B,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,2DAA2D;aACxE,CAAC;QACJ,CAAC;QAED,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,qBAAqB,QAAQ,KAAK,CAAC,CAAC;YAEhD,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,SAAS,EAAE,IAAI,EAAE,OAAO;aACzB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,OAAO,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;gBAC5D,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC;YAC3B,CAAC;iBAAM,CAAC;gBACN,MAAM,WAAW,GAAG,MAAM,CAAC,MAAM,IAAI,MAAM,CAAC,MAAM,IAAI,EAAE,CAAC;gBACzD,eAAM,CAAC,KAAK,CAAC,4BAA4B,QAAQ,GAAG,EAAE,WAAW,CAAC,CAAC;gBAEnE,OAAO,IAAI,CAAC,mBAAmB,CAAC,WAAW,CAAC,CAAC;YAC/C,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,uBAAuB,EAAE,KAAK,CAAC,CAAC;YAC7C,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC;gBAC7D,SAAS,EAAE,SAAS;gBACpB,UAAU,EAAE,4DAA4D;aACzE,CAAC;QACJ,CAAC;IACH,CAAC;IAEO,mBAAmB,CAAC,WAAmB;QAC7C,MAAM,KAAK,GAAG,WAAW,CAAC,WAAW,EAAE,CAAC;QAExC,IAAI,KAAK,CAAC,QAAQ,CAAC,qCAAqC,CAAC,EAAE,CAAC;YAC1D,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,sBAAsB;gBACjC,UAAU,EAAE,gGAAgG;aAC7G,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,QAAQ,CAAC,+BAA+B,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,kCAAkC,CAAC,EAAE,CAAC;YAC1G,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,mBAAmB;gBAC9B,UAAU,EAAE,4FAA4F;aACzG,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,QAAQ,CAAC,4BAA4B,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,iBAAiB,CAAC,EAAE,CAAC;YACtF,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,aAAa;gBACxB,UAAU,EAAE,mEAAmE;aAChF,CAAC;QACJ,CAAC;QAED,IAAI,KAAK,CAAC,QAAQ,CAAC,mBAAmB,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,gCAAgC,CAAC,EAAE,CAAC;YAC5F,OAAO;gBACL,OAAO,EAAE,KAAK;gBACd,KAAK,EAAE,WAAW;gBAClB,SAAS,EAAE,mBAAmB;gBAC9B,UAAU,EAAE,6GAA6G;aAC1H,CAAC;QACJ,CAAC;QAED,OAAO;YACL,OAAO,EAAE,KAAK;YACd,KAAK,EAAE,WAAW;YAClB,SAAS,EAAE,SAAS;YACpB,UAAU,EAAE,mGAAmG;SAChH,CAAC;IACJ,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,WAAmB;QACtD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,gBAAgB,WAAW,SAAS,QAAQ,KAAK,CAAC,CAAC;YAE/D,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,WAAW,EAAE,WAAW;aACzB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,OAAO,CAAC,GAAG,WAAW,kCAAkC,QAAQ,EAAE,CAAC,CAAC;gBAC3E,OAAO,IAAI,CAAC;YACd,CAAC;YAED,eAAM,CAAC,IAAI,CAAC,uBAAuB,WAAW,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;YAClE,OAAO,KAAK,CAAC;QACf,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,yBAAyB,EAAE,KAAK,CAAC,CAAC;YAC/C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,cAAc,CAAC,QAAgB;QACnC,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO,IAAI,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,OAAO;aACvB,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,sCAAsC;gBACtC,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,MAAM,QAAQ,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC,CAAC;gBAE5D,IAAI,QAAQ,EAAE,CAAC;oBACb,MAAM,KAAK,GAAG,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC;oBACpC,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE,CAAC;wBACtB,MAAM,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;wBACjE,MAAM,SAAS,GAAG,IAAI,CAAC,WAAW,CAAC,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,CAAC;wBACrE,OAAO,EAAE,KAAK,EAAE,SAAS,EAAE,CAAC;oBAC9B,CAAC;gBACH,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,6BAA6B,EAAE,KAAK,CAAC,CAAC;YACnD,OAAO,IAAI,CAAC;QACd,CAAC;IACH,CAAC;IAEO,WAAW,CAAC,KAAa;QAC/B,IAAI,KAAK,KAAK,CAAC;YAAE,OAAO,KAAK,CAAC;QAC9B,MAAM,CAAC,GAAG,IAAI,CAAC;QACf,MAAM,KAAK,GAAG,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC;QACtC,MAAM,CAAC,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,KAAK,CAAC,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;QACpD,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,CAAC,KAAK,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;IACzE,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,QAAgB,EAAE,WAAmB;QACjD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,eAAM,CAAC,KAAK,CAAC,WAAW,WAAW,OAAO,QAAQ,KAAK,CAAC,CAAC;YAEzD,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,YAAY,EAAE,WAAW;aACzC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,KAAK,CAAC,8BAA8B,QAAQ,EAAE,CAAC,CAAC;gBACvD,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,gDAAgD;gBAChD,eAAM,CAAC,KAAK,CAAC,oBAAoB,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;gBAClD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,oBAAoB,EAAE,KAAK,CAAC,CAAC;YAC1C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,SAAS,CAAC,QAAgB,EAAE,WAAmB,EAAE,YAAqB;QAC1E,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,MAAM,QAAQ,GAAG,YAAY,IAAI,MAAM,IAAI,CAAC,eAAe,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;YAEnF,IAAI,CAAC,QAAQ,EAAE,CAAC;gBACd,eAAM,CAAC,KAAK,CAAC,oCAAoC,WAAW,EAAE,CAAC,CAAC;gBAChE,OAAO,KAAK,CAAC;YACf,CAAC;YAED,eAAM,CAAC,IAAI,CAAC,aAAa,WAAW,OAAO,QAAQ,KAAK,CAAC,CAAC;YAE1D,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,OAAO;gBACtB,IAAI,EAAE,GAAG,WAAW,IAAI,QAAQ,EAAE;aACnC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,OAAO,CAAC,gCAAgC,QAAQ,EAAE,CAAC,CAAC;gBAC3D,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,eAAM,CAAC,KAAK,CAAC,2BAA2B,QAAQ,GAAG,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACpE,eAAM,CAAC,KAAK,CAAC,oBAAoB,WAAW,IAAI,QAAQ,EAAE,CAAC,CAAC;gBAC5D,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,KAAK,CAAC,CAAC;YAC5C,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,UAAU,CAAC,QAAgB,EAAE,WAAmB,EAAE,YAAqB;QAC3E,eAAM,CAAC,IAAI,CAAC,cAAc,WAAW,OAAO,QAAQ,KAAK,CAAC,CAAC;QAE3D,iEAAiE;QACjE,MAAM,WAAW,GAAG,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAC9D,IAAI,CAAC,WAAW,EAAE,CAAC;YACjB,eAAM,CAAC,KAAK,CAAC,qDAAqD,CAAC,CAAC;QACtE,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,KAAK,CAAC,yBAAyB,CAAC,CAAC;QAC1C,CAAC;QAED,iDAAiD;QACjD,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,CAAC;QAEvD,uBAAuB;QACvB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAEhF,IAAI,aAAa,EAAE,CAAC;YAClB,eAAM,CAAC,OAAO,CAAC,iCAAiC,QAAQ,EAAE,CAAC,CAAC;YAC5D,OAAO,IAAI,CAAC;QACd,CAAC;aAAM,CAAC;YACN,eAAM,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC;YACtD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAEO,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,WAAmB;QACjE,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW;aACnC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;gBACxC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,IAAI,IAAI,CAAC,QAAQ,CAAC,4BAA4B,CAAC,EAAE,CAAC;wBAChD,MAAM,aAAa,GAAG,IAAI,CAAC,KAAK,CAAC,kCAAkC,CAAC,CAAC;wBACrE,IAAI,aAAa,EAAE,CAAC;4BAClB,OAAO,aAAa,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;wBACxC,CAAC;oBACH,CAAC;gBACH,CAAC;YACH,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,mCAAmC,WAAW,GAAG,EAAE,KAAK,CAAC,CAAC;QACzE,CAAC;QAED,oCAAoC;QACpC,MAAM,gBAAgB,GAAG,CAAC,eAAe,EAAE,OAAO,EAAE,eAAe,CAAC,CAAC;QACrE,KAAK,MAAM,QAAQ,IAAI,gBAAgB,EAAE,CAAC;YACxC,qDAAqD;YACrD,gEAAgE;YAChE,eAAM,CAAC,KAAK,CAAC,6BAA6B,QAAQ,EAAE,CAAC,CAAC;YACtD,OAAO,QAAQ,CAAC;QAClB,CAAC;QAED,OAAO,eAAe,CAAC,CAAC,mBAAmB;IAC7C,CAAC;IAEO,KAAK,CAAC,cAAc,CAAC,QAAgB,EAAE,WAAmB,EAAE,YAAoB;QACtF,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,WAAW;aAC/C,CAAC,CAAC;YAEH,OAAO,MAAM,CAAC,OAAO,IAAI,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAC,CAAC;QAC/D,CAAC;QAAC,MAAM,CAAC;YACP,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,QAAgB,EAAE,WAAmB;QACtD,IAAI,CAAC,CAAC,MAAM,IAAI,CAAC,iBAAiB,EAAE,CAAC,EAAE,CAAC;YACtC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,yBAAyB,WAAW,OAAO,QAAQ,KAAK,CAAC,CAAC;YAEtE,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;gBAC7C,IAAI,EAAE,QAAQ;gBACd,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW;aACpC,CAAC,CAAC;YAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;gBACnB,eAAM,CAAC,OAAO,CAAC,wBAAwB,WAAW,EAAE,CAAC,CAAC;gBACtD,OAAO,IAAI,CAAC;YACd,CAAC;iBAAM,CAAC;gBACN,eAAM,CAAC,KAAK,CAAC,2BAA2B,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBACzD,OAAO,KAAK,CAAC;YACf,CAAC;QACH,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,sBAAsB,CAAC,QAAgB,EAAE,WAAmB,EAAE,YAAqB;QACvF,eAAM,CAAC,IAAI,CAAC,oCAAoC,WAAW,OAAO,QAAQ,KAAK,CAAC,CAAC;QAEjF,2CAA2C;QAC3C,MAAM,IAAI,CAAC,OAAO,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QAE1C,iBAAiB;QACjB,MAAM,YAAY,GAAG,MAAM,IAAI,CAAC,YAAY,CAAC,QAAQ,EAAE,WAAW,CAAC,CAAC;QACpE,IAAI,CAAC,YAAY,EAAE,CAAC;YAClB,eAAM,CAAC,KAAK,CAAC,0BAA0B,CAAC,CAAC;YACzC,OAAO,KAAK,CAAC;QACf,CAAC;QAED,yCAAyC;QACzC,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;QAExD,iBAAiB;QACjB,MAAM,aAAa,GAAG,MAAM,IAAI,CAAC,SAAS,CAAC,QAAQ,EAAE,WAAW,EAAE,YAAY,CAAC,CAAC;QAEhF,IAAI,aAAa,EAAE,CAAC;YAClB,eAAM,CAAC,OAAO,CAAC,sDAAsD,QAAQ,EAAE,CAAC,CAAC;YACjF,OAAO,IAAI,CAAC;QACd,CAAC;QAED,eAAM,CAAC,KAAK,CAAC,4CAA4C,CAAC,CAAC;QAC3D,OAAO,KAAK,CAAC;IACf,CAAC;IAED,aAAa,CAAC,QAAgB;QAC5B,OAAO,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,QAAQ,CAAC,IAAI,IAAI,CAAC;IACrE,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAClE,CAAC;IAED,kBAAkB;QAChB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,QAAQ,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAC9F,CAAC;IAED,mBAAmB;QACjB,OAAO,IAAI,CAAC,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,IAAI,KAAK,UAAU,IAAI,MAAM,CAAC,KAAK,KAAK,QAAQ,CAAC,CAAC;IAChG,CAAC;IAED,KAAK,CAAC,qBAAqB;QACzB,IAAI,CAAC;YACH,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,UAAU,EAAE,CAAC,YAAY,CAAC,CAAC,CAAC;YAEpE,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;gBACpB,eAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,MAAM,CAAC,MAAM,CAAC,CAAC;gBAClE,OAAO,EAAE,CAAC;YACZ,CAAC;YAED,MAAM,SAAS,GAAwB,EAAE,CAAC;YAC1C,MAAM,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC,CAAC;YAEpE,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,MAAM,IAAI,GAAG,IAAI,CAAC,IAAI,EAAE,CAAC;gBACzB,IAAI,IAAI,EAAE,CAAC;oBACT,SAAS,CAAC,IAAI,CAAC;wBACb,IAAI;wBACJ,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI,EAAE,GAAG,CAAC;qBACrC,CAAC,CAAC;gBACL,CAAC;YACH,CAAC;YAED,eAAM,CAAC,KAAK,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC;YAChD,OAAO,SAAS,CAAC;QACnB,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,oCAAoC,EAAE,KAAK,CAAC,CAAC;YAC1D,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,KAAK,CAAC,aAAa,CAAC,YAAoB;QACtC,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,sBAAsB,YAAY,KAAK,CAAC,CAAC;YAErD,+BAA+B;YAC/B,wBAAc,CAAC,KAAK,CAAC,UAAU,EAAE,CAAC,MAAM,EAAE,YAAY,EAAE,WAAW,CAAC,EAAE;gBACpE,KAAK,EAAE,QAAQ;aAChB,CAAC,CAAC;YAEH,oEAAoE;YACpE,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;YAExD,eAAM,CAAC,OAAO,CAAC,YAAY,YAAY,iBAAiB,CAAC,CAAC;YAC1D,eAAM,CAAC,IAAI,CAAC,0DAA0D,CAAC,CAAC;YAExE,6CAA6C;YAC7C,IAAI,QAAQ,GAAG,CAAC,CAAC;YACjB,MAAM,WAAW,GAAG,EAAE,CAAC,CAAC,aAAa;YAErC,OAAO,QAAQ,GAAG,WAAW,EAAE,CAAC;gBAC9B,MAAM,IAAI,OAAO,CAAC,OAAO,CAAC,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,CAAC;gBAExD,MAAM,IAAI,CAAC,UAAU,EAAE,CAAC;gBACxB,MAAM,gBAAgB,GAAG,IAAI,CAAC,mBAAmB,EAAE,CAAC;gBAEpD,IAAI,gBAAgB,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBAChC,MAAM,QAAQ,GAAG,gBAAgB,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,IAAI,CAAC,CAAC,EAAE,CAAC,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC;oBACxG,IAAI,QAAQ,EAAE,CAAC;wBACb,eAAM,CAAC,OAAO,CAAC,mBAAmB,QAAQ,CAAC,IAAI,KAAK,QAAQ,CAAC,EAAE,GAAG,CAAC,CAAC;wBACpE,OAAO,IAAI,CAAC;oBACd,CAAC;gBACH,CAAC;gBAED,QAAQ,EAAE,CAAC;YACb,CAAC;YAED,eAAM,CAAC,IAAI,CAAC,oFAAoF,CAAC,CAAC;YAClG,OAAO,IAAI,CAAC;QAEd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,0BAA0B,EAAE,KAAK,CAAC,CAAC;YAChD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,eAAe,CAAC,QAAgB,EAAE,KAAe;QACrD,IAAI,CAAC;YACH,eAAM,CAAC,IAAI,CAAC,+BAA+B,CAAC,CAAC;YAE7C,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;gBACzB,eAAM,CAAC,IAAI,CAAC,mCAAmC,IAAI,KAAK,CAAC,CAAC;gBAE1D,MAAM,MAAM,GAAG,MAAM,wBAAc,CAAC,GAAG,CAAC,KAAK,EAAE;oBAC7C,IAAI,EAAE,QAAQ;oBACd,SAAS,EAAE,OAAO,IAAI,EAAE,EAAE,OAAO,IAAI,EAAE;iBACxC,CAAC,CAAC;gBAEH,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;oBACnB,eAAM,CAAC,OAAO,CAAC,kCAAkC,IAAI,YAAY,IAAI,EAAE,CAAC,CAAC;gBAC3E,CAAC;qBAAM,CAAC;oBACN,eAAM,CAAC,IAAI,CAAC,6CAA6C,IAAI,KAAK,MAAM,CAAC,MAAM,EAAE,CAAC,CAAC;oBACnF,8CAA8C;gBAChD,CAAC;YACH,CAAC;YAED,OAAO,IAAI,CAAC;QACd,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,eAAM,CAAC,KAAK,CAAC,+BAA+B,EAAE,KAAK,CAAC,CAAC;YACrD,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,KAAK,CAAC,oBAAoB;QACxB,OAAO,MAAM,wBAAc,CAAC,YAAY,CAAC,UAAU,CAAC,CAAC;IACvD,CAAC;CACF;AAvlBD,gCAulBC"}
1
+ {"version":3,"file":"adb.js","sourceRoot":"","sources":["../../src/core/adb.ts"],"names":[],"mappings":"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"}
@@ -3,6 +3,7 @@ export interface AndroidProjectInfo {
3
3
  appPath: string;
4
4
  packageName: string;
5
5
  buildVariants: string[];
6
+ variantSuffixes: Record<string, string>;
6
7
  hasGradleWrapper: boolean;
7
8
  gradleWrapperPath: string;
8
9
  }
@@ -11,11 +12,12 @@ export declare class AndroidProject {
11
12
  static detect(startPath?: string): Promise<AndroidProject | null>;
12
13
  private loadProjectInfo;
13
14
  private extractPackageName;
14
- private extractBuildVariants;
15
+ private extractBuildVariantsAndSuffixes;
15
16
  getInfo(): AndroidProjectInfo | null;
16
17
  getRootPath(): string;
17
18
  getAppPath(): string;
18
19
  getPackageName(): string;
20
+ getPackageNameForVariant(variant: string): string;
19
21
  getBuildVariants(): string[];
20
22
  hasGradleWrapper(): boolean;
21
23
  getGradleWrapperPath(): string;
@@ -1 +1 @@
1
- {"version":3,"file":"android-project.d.ts","sourceRoot":"","sources":["../../src/core/android-project.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAmC;WAEzC,MAAM,CAAC,SAAS,GAAE,MAAsB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;YAmBxE,eAAe;IAmC7B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,oBAAoB;IAsB5B,OAAO,IAAI,kBAAkB,GAAG,IAAI;IAIpC,WAAW,IAAI,MAAM;IAIrB,UAAU,IAAI,MAAM;IAIpB,cAAc,IAAI,MAAM;IAIxB,gBAAgB,IAAI,MAAM,EAAE;IAI5B,gBAAgB,IAAI,OAAO;IAI3B,oBAAoB,IAAI,MAAM;IAI9B,gBAAgB,IAAI,MAAM;IAOpB,UAAU,CAAC,OAAO,GAAE,MAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;CAe7D"}
1
+ {"version":3,"file":"android-project.d.ts","sourceRoot":"","sources":["../../src/core/android-project.ts"],"names":[],"mappings":"AAKA,MAAM,WAAW,kBAAkB;IACjC,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,eAAe,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IACxC,gBAAgB,EAAE,OAAO,CAAC;IAC1B,iBAAiB,EAAE,MAAM,CAAC;CAC3B;AAED,qBAAa,cAAc;IACzB,OAAO,CAAC,WAAW,CAAmC;WAEzC,MAAM,CAAC,SAAS,GAAE,MAAsB,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;YAmBxE,eAAe;IAoC7B,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,+BAA+B;IA+DvC,OAAO,IAAI,kBAAkB,GAAG,IAAI;IAIpC,WAAW,IAAI,MAAM;IAIrB,UAAU,IAAI,MAAM;IAIpB,cAAc,IAAI,MAAM;IAIxB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM;IAejD,gBAAgB,IAAI,MAAM,EAAE;IAI5B,gBAAgB,IAAI,OAAO;IAI3B,oBAAoB,IAAI,MAAM;IAI9B,gBAAgB,IAAI,MAAM;IAOpB,UAAU,CAAC,OAAO,GAAE,MAAgB,GAAG,OAAO,CAAC,MAAM,CAAC;CAe7D"}
@@ -70,14 +70,15 @@ class AndroidProject {
70
70
  buildGradleContent = await fs.readFile(buildGradleKtsPath, 'utf-8');
71
71
  }
72
72
  const packageName = this.extractPackageName(buildGradleContent);
73
- const buildVariants = this.extractBuildVariants(buildGradleContent);
73
+ const { variants, suffixes } = this.extractBuildVariantsAndSuffixes(buildGradleContent);
74
74
  const hasGradleWrapper = validators_1.Validators.hasGradleWrapper(rootPath);
75
75
  const gradleWrapperPath = path.join(rootPath, 'gradlew');
76
76
  this.projectInfo = {
77
77
  rootPath,
78
78
  appPath,
79
79
  packageName,
80
- buildVariants,
80
+ buildVariants: variants,
81
+ variantSuffixes: suffixes,
81
82
  hasGradleWrapper,
82
83
  gradleWrapperPath,
83
84
  };
@@ -93,23 +94,58 @@ class AndroidProject {
93
94
  const match = buildGradleContent.match(/applicationId\s+['"](.*?)['"]/);
94
95
  return match ? match[1] : 'unknown';
95
96
  }
96
- extractBuildVariants(buildGradleContent) {
97
- const variants = ['debug', 'release']; // Default variants
98
- // Look for custom build types
99
- const buildTypesMatch = buildGradleContent.match(/buildTypes\s*\{([\s\S]*?)\}/);
97
+ extractBuildVariantsAndSuffixes(buildGradleContent) {
98
+ const variants = [];
99
+ const suffixes = {};
100
+ // Look for buildTypes block - match everything until we find a line that starts without indentation
101
+ const buildTypesMatch = buildGradleContent.match(/buildTypes\s*\{([\s\S]*?)^\s*\}/m);
100
102
  if (buildTypesMatch) {
101
103
  const buildTypesContent = buildTypesMatch[1];
102
- const customVariants = buildTypesContent.match(/(\w+)\s*\{/g);
103
- if (customVariants) {
104
- customVariants.forEach(variant => {
105
- const variantName = variant.replace(/\s*\{/, '').trim();
106
- if (!variants.includes(variantName)) {
107
- variants.push(variantName);
104
+ // Extract each build type by looking for blocks that start with a word and opening brace
105
+ const lines = buildTypesContent.split('\n');
106
+ let currentVariant = null;
107
+ let currentContent = '';
108
+ for (const line of lines) {
109
+ // Check if this line starts a new build type
110
+ const variantMatch = line.match(/^\s*(\w+)\s*\{/);
111
+ if (variantMatch) {
112
+ // Save previous variant if exists
113
+ if (currentVariant && currentContent) {
114
+ variants.push(currentVariant);
115
+ // Look for applicationIdSuffix
116
+ const suffixMatch = currentContent.match(/applicationIdSuffix\s+['"](.*?)['"]/);
117
+ if (suffixMatch) {
118
+ suffixes[currentVariant] = suffixMatch[1];
119
+ }
108
120
  }
109
- });
121
+ // Start new variant
122
+ currentVariant = variantMatch[1];
123
+ currentContent = line;
124
+ }
125
+ else if (currentVariant) {
126
+ // Accumulate content for current variant
127
+ currentContent += '\n' + line;
128
+ }
110
129
  }
130
+ // Don't forget the last variant
131
+ if (currentVariant && currentContent) {
132
+ variants.push(currentVariant);
133
+ const suffixMatch = currentContent.match(/applicationIdSuffix\s+['"](.*?)['"]/);
134
+ if (suffixMatch) {
135
+ suffixes[currentVariant] = suffixMatch[1];
136
+ }
137
+ }
138
+ }
139
+ // Ensure default variants are included if not found
140
+ if (!variants.includes('debug')) {
141
+ variants.push('debug');
142
+ }
143
+ if (!variants.includes('release')) {
144
+ variants.push('release');
111
145
  }
112
- return variants;
146
+ logger_1.Logger.debug(`Extracted variants: ${JSON.stringify(variants)}`);
147
+ logger_1.Logger.debug(`Extracted suffixes: ${JSON.stringify(suffixes)}`);
148
+ return { variants, suffixes };
113
149
  }
114
150
  getInfo() {
115
151
  return this.projectInfo;
@@ -123,6 +159,17 @@ class AndroidProject {
123
159
  getPackageName() {
124
160
  return this.projectInfo?.packageName || 'unknown';
125
161
  }
162
+ getPackageNameForVariant(variant) {
163
+ if (!this.projectInfo) {
164
+ return 'unknown';
165
+ }
166
+ const basePackageName = this.projectInfo.packageName;
167
+ const suffix = this.projectInfo.variantSuffixes[variant];
168
+ if (suffix) {
169
+ return `${basePackageName}${suffix}`;
170
+ }
171
+ return basePackageName;
172
+ }
126
173
  getBuildVariants() {
127
174
  return this.projectInfo?.buildVariants || ['debug', 'release'];
128
175
  }