In the Android SDK, if you install build-tools version 27.0.0 or higher and then do an Android build via Titanium, then the following warning message will be logged...
Android build-tools 27.x.x so far appears to work fine with Titanium builds. So, this warning is harmless for now. But in the future, Google could make breaking changes to their build-tools and we need to protect against this to help future proof our build system.
- Open Google's "Android SDK Manager".
- Make sure the newest 26.x.x build-tools version is installed.
- Make sure the newest 27.x.x build-tools version is installed.
- Do a Titanium Android build.
- Observe the log for the above mentioned warning.
Titanium currently only supports build-tools version 26.x.x as defined by our "package.json" here...
But the CLI ignores this setting and always uses the newest build-tools version available in the Android SDK instead of using the preferred version defined by our "package.json". This is because the linked code below will return a "maybe" string instead of true for a version higher than supported version, but it still evaluates as a positive in the if condition...
CLI should be changed to favor the build-tools version defined in the "package.json". A newer version outside of this range should only be selected if no preferred version is installed, in which case, the build-tools warning is desired.
We should not make this change until after updating Titanium's "package.json" to support build-tools 27.x.x. This is to avoid a possible breaking change with developers who only have 27.x.x installed. (Shouldn't cause an issue, but better safe than sorry.)