Classy Data

API Level and SDK Platform Tools Configuration

Version Properties

The properties to control which API Level and SDK Platform Tools versions to use are located in the Classy Data and Classy Apps home directory pom.xml files. Classy Data has 3 SDK properties as highlighted :
<properties>
<android.plugin.version>4.5.0</android.plugin.version>
<android.platform.version>25</android.platform.version>
<android.sdk.version>7.1.1_r3</android.sdk.version>
<android.support.version>25.3.1</android.support.version>
<robolectric.version>3.3.2</robolectric.version>
<ormlite.version>5.0</ormlite.version>
<dagger.version>2.6.1</dagger.version>
...
</properties>

The android.platform.version and android.sdk.version refer to the SDK Platform in two different ways. The first is the API level and the second is the specific 3-part version and revision of the SDK Platform Tools package. The package name displayed in the SDK Manager shows the version and API level eg. "Android 6.0 (API 23)" indicates version "6.0.0" and API level of "23". The package revision is displayed in the "Rev." column of the "SDK Platform" item, which is "2" in this example:

android.platform.version = 23
android.sdk.version = 6.0.0_r2

Android SDK 6.0.0

Note that Android 4.4W breaks the convention on how the version is displayed in that the revision is included in the package name.

Support Library Version

Classy Data requires the Android Compatibility Support Library v7 and it's v4 dependency. New versions usually are released over the life of a particular API version, so a android.support.version property is provided to specify what is the current version.

The android.support.version property is a 3-part value, so intial revision "25" is entered as "25.0.0".

Note there is one Support Library version reference buried in the classyfy/classyfy-application/src/test/resources folder of the of Classy Apps package. In the robolectric.properties file there is a "libraries" property which starts as follows:

libraries=target/unpacked-libs/acc_classy_data_lib_2.0.2,...

All the remaining libraries listed in the property are prefixed with "cas_" and need to be set to the current support version eg. cas_appcompat-v7_25.3.1.

Android Studio

Android Studio ensures the latest version of the "Android Support Repository" is installed. There is a support library dependency shown below in each module gradle.build file:
   compile 'com.android.support:appcompat-v7:25.3.1'
   compile 'com.android.support:support-v4:25.3.1'