Skip to content

Commit c4ffc06

Browse files
authoredJan 19, 2024
fix: launching activity defined with fully qualified name (#2269)
1 parent 4d79e33 commit c4ffc06

File tree

2 files changed

+25
-1
lines changed

2 files changed

+25
-1
lines changed
 

‎packages/cli-platform-android/src/commands/runAndroid/__tests__/tryLaunchAppOnDevice.test.ts

+22
Original file line numberDiff line numberDiff line change
@@ -59,6 +59,28 @@ test('launches adb shell with intent to launch com.myapp.MainActivity with diffe
5959
);
6060
});
6161

62+
test('launches adb shell with intent to launch com.myapp.MainActivity with different appId than packageName on a simulator when mainActivity is fully qualified name', () => {
63+
tryLaunchAppOnDevice(
64+
device,
65+
{...androidProject, mainActivity: 'com.myapp.MainActivity'},
66+
adbPath,
67+
args,
68+
);
69+
70+
expect(execa.sync).toHaveBeenCalledWith(
71+
'path/to/adb',
72+
[
73+
'-s',
74+
'emulator-5554',
75+
...shellStartCommand,
76+
'-n',
77+
'com.myapp.custom/com.myapp.MainActivity',
78+
...actionCategoryFlags,
79+
],
80+
{stdio: 'inherit'},
81+
);
82+
});
83+
6284
test('launches adb shell with intent to launch com.myapp.MainActivity with same appId as packageName on a simulator', () => {
6385
tryLaunchAppOnDevice(
6486
device,

‎packages/cli-platform-android/src/commands/runAndroid/tryLaunchAppOnDevice.ts

+3-1
Original file line numberDiff line numberDiff line change
@@ -24,7 +24,9 @@ function tryLaunchAppOnDevice(
2424
.filter(Boolean)
2525
.join('.');
2626

27-
const activityToLaunch = mainActivity.includes('.')
27+
const activityToLaunch = mainActivity.startsWith(packageName)
28+
? mainActivity
29+
: mainActivity.startsWith('.')
2830
? [packageName, mainActivity].join('')
2931
: [packageName, mainActivity].filter(Boolean).join('.');
3032

0 commit comments

Comments
 (0)
Please sign in to comment.