Library project build version higher than projects using it

It is probably doable by branch checking SDK version in code level like if android.os.Build.VERSION.SDK_INT < 11 then do not run this, but not recommended by dev guide:

Platform version must be lower than or equal to the Android project

A library is compiled as part of the dependent application project, so the API used in the library project must be compatible with the version of the Android library used to compile the application project. In general, the library project should use an API level that is the same as — or lower than — that used by the application. If the library project uses an API level that is higher than that of the application, the application project will not compile. It is perfectly acceptable to have a library that uses the Android 1.5 API (API level 3) and that is used in an Android 1.6 (API level 4) or Android 2.1 (API level 7) project, for instance.


It is possible for you to use library supporting higher minSdkVersion than that in your project. To do so, in your projects manifest file add tools:overrideLibrary="<libraries packagename>" manifest element uses-sdk

<uses-sdk android:minSdkVersion="9" android:targetSdkVersion="23" tools:overrideLibrary="<libraries packagename>" />