[xaprepare] Allow desired Android SDK platform levels to be selected. #6874
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Currently, we need all Android SDK platforms to perform the
api-mergeneeded to build Xamarin.Android. However, we do not need all of them on the test agents in order to run our tests.Add an option to
xapreparecalled--android-sdk-platformsthat can be used to specify which API levels are needed.For test agents, request API levels
19,21,26,32needed for tests to successfully run. This cuts the time taken for thexapreparestep on a fresh Windows VM image from19m:36sto5m:11s.A future enhancement would be to examine the tests that require API levels 19/21/26 to determine if these tests actually need to run against those levels, or if they could be updated to use the latest level.
Tests requiring old API levels:
26 - CheckMaxResWarningIsEmittedAsAWarning
21 - FailedBuildFew_ConflictingTextView, FailedBuildMany_ConflictingLinearLayout, SuccessfulBuildFew_DTB, etc.
19 - CheckTargetFrameworkVersion