In 3.2 of the Android SDK EULA, it says that I am not supposed to develop for non-CTS compliant versions of Android. Does that mean I can't test on a phone that's not CTS-compliant, or does that mean my intended target device should be CTS compliant? Thanks in advance.

Here are the exact wordings of the relevant parts of the agreement

1.3 A "compatible implementation" means any Android device that (i) complies with the Android Compatibility Definition document, which can be found at the Android compatibility website (http://source.android.com/compatibility) and which may be updated from time to time; and (ii) successfully passes the Android Compatibility Test Suite (CTS).

3.2 You may not use this SDK to develop applications for other platforms (including non-compatible implementations of Android) or to develop another SDK. You are of course free to develop applications for other platforms, including non-compatible implementations of Android, provided that this SDK is not used for that purpose.

(My issue is that I use a MI5s running the developer rom, which does not past the cts because it is not the stable release. I'm pretty sure the stable version does pass the CTS tests because xiaomi does have google installed on the global roms)

  • It would be better if you quoted this literally. Does it say literally "You are not supposed to develop for ..." or what does it say? Exact wording can make a huge difference.
    – gnasher729
    May 6, 2017 at 20:42

1 Answer 1


"Develop for other platforms" would mean "Develop an application that is published to be distributed or sold for use on another platform". That is not what you are doing. You are developing for a "compatible implementation". If your application happens to run on a "non-compatible" implementation, because that implementation is just slightly incompatible, that's not a problem. If there was a substantial market for "non-compatible" devices, and you were to market your application specifically to that market, that would be a problem.

And you say this is "confusing". Well, if terms in a contract are unclear, then generally this is held against those who wrote the contract.

  • Thanks for the answer. That's how I interpret it too. Anyways, many phones fail the CTS test due to rooting.
    – Max Xiong
    May 12, 2017 at 1:19

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .