android / android/testing-samples
The launcher name on Android 11 is returned as com.android.settings instead of the actual launcher package name
- Ngôn ngữ chính
- Java
- Star
- 9.3k
- Fork
- 3.6k
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Mô tả
`getLauncherPackagename()` returns `com.android.settings`. So `mDevice.wait(Until.hasObject(By.pkg(launcherPackage).depth(0)), LAUNCH_TIMEOUT);` doesn't really wait for the launcher package.
I believe this is due to the package visibility changes on Android 11.
Our test setup consisted of this check before starting with the tests:
`String currentPackageName = device.getCurrentPackageName();
if (currentPackageName != null) {
assertEquals(packageName, currentPackageName);
}`
This failed as currentPackageName returned as `com.google.android.apps.nexuslauncher` and getLauncherPackagename() returned `com.android.settings`.
Hướng dẫn đóng góp
Hướng nghiên cứu
Bắt đầu bằng cách lần theo getLauncherPackagename() và lệnh gọi mDevice.wait(Until.hasObject(By.pkg(launcherPackage).depth(0)), LAUNCH_TIMEOUT), sau đó tái hiện bước kiểm tra thiết lập bằng device.getCurrentPackageName() trên Android 11. Được xem là hoàn tất khi package của launcher được xác định là launcher thực tế thay vì com.android.settings và wait nhắm đến package đó.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Đánh giá
- Công nghệ
- android, java
- Lĩnh vực
- mobile, testing-qa
- Loại issue
- Lỗi
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức độ hoạt động
- Đình trệ
- Độ rõ ràng
- Khá rõ ràng
- Mức phù hợp với người mới
- 35/100