Current versions:
- Physical Phones:
- A55 and S24: Android 14 (API 34)
- Pixel6: Android 13 (API 33)
- Default `./mach android-emulator`
- x86_64: Android 7 (API 24)
- Apple Silicon: Android 11 (API 30)
- UI Tests (Google Firebase Test Lab)
- android-components: Android 9 (API 28)
- legacy api tests: API 26, 28, 30, 32
- robo test (chaos testing): API 30, 31, 32, 34
- baseline profile: Android 13 (API 33)
- general: Android 11 (API 30) || Android 14 (API 34)
- GeckoView PGO
- ARM32: Android 11 (API 30)
- ARM64: Android 12.0 (API 31)
- Platform Tests
- Android 7 (API 24)
Note: Current minimum version is Android 5.0 (API 21) which we have zero CI coverage for.
At the very least it should be Android 10.0 (API 29) since we see noticeable changes with Scope Storage and some other security changes. Having tests, scripts, tools work at that version makes local work more feasible.
I am leaning towards *Android 11 (API 30)* to replace the platform default since we have local Mac devs defaulting to API 30 already, and a bunch of UI tests as well, it seem tractable to get working.
Related to this I want to have multiple AVD configs in tree so that it is easier to local devs to switch among verions. For local devs, I also have a preference to use google-api instead of aosp images by default. They behave more like a real phone, and default to being unrooted (with an easy toggle if needed) so we avoid building bad habits that make it harder to test things on real phones.
Having the option to target try and central with minimum version test jobs might also be nice, but I don't think we want minVer as the _first_ line of testing.
Bug 1969143 Comment 10 Edit History
Note: The actual edited comment in the bug view page will always show the original commenter’s name and original timestamp.
Current versions:
- Physical Phones:
- A55 and S24: Android 14 (API 34)
- Pixel6: Android 13 (API 33)
- Default `./mach android-emulator`
- x86_64: Android 7 (API 24)
- Apple Silicon: Android 11 (API 30)
- UI Tests (Google Firebase Test Lab)
- android-components: Android 9 (API 28)
- legacy api tests: API 26, 28, 30, 32
- robo test (chaos testing): API 30, 31, 32, 34
- baseline profile: Android 13 (API 33)
- general: Android 11 (API 30) || Android 14 (API 34)
- GeckoView PGO
- ARM32: Android 11 (API 30)
- ARM64: Android 12.0 (API 31)
- Platform Tests
- Android 7 (API 24)
Note: Current minimum version is Android 5.0 (API 21) which we have zero CI coverage for.
At the very least it should be Android 10.0 (API 29) since we see noticeable changes with Scope Storage and some other security changes. Having tests, scripts, tools work at that version makes local work more feasible.
I am leaning towards *Android 11 (API 30)* to replace the platform default since we have local Mac devs defaulting to API 30 already, and a bunch of UI tests as well, it seem tractable to get working. I think the jump from API 30 to 34 will be smaller in the future if we desire that.
Related to this I want to have multiple AVD configs in tree so that it is easier to local devs to switch among verions. For local devs, I also have a preference to use google-api instead of aosp images by default. They behave more like a real phone, and default to being unrooted (with an easy toggle if needed) so we avoid building bad habits that make it harder to test things on real phones.
Having the option to target try and central with minimum version test jobs might also be nice, but I don't think we want minVer as the _first_ line of testing.