This support library should not use a different vesion than the compileSdkVersion

Android supportライブラリなどで利用するべきバージョンについて(サンプル有)

Androidのgradleのdependenciesのimplementation(旧 compile)でよく出るこのWarning。

StackOverflowとかで見て、このエラーでビルドできないからこれ、と闇雲にライブラリのバージョンを指定していると、こうなりますよねw

ほっといてもビルドできる時もありますが、時にできなくなって、できない時は本当にカオスでわけわかめになります。

なので、ちゃんとやった方がいいです。

じゃあ、どのバージョンを指定したらいいのー??ってなりますが、その方法を書いておきます。

下記のようにアプリケーションのbuild.gradleファイルを作ったとすると

apply plugin: 'com.android.application'
apply plugin: 'com.google.gms.google-services'


android {
    compileSdkVersion 27
    buildToolsVersion '28.0.3'
    defaultConfig {
        applicationId "hogehoge"
        minSdkVersion 14
        targetSdkVersion 27
        javaCompileOptions {
            annotationProcessorOptions {
                includeCompileClasspath false
            }
        }
    }
    buildTypes {
        release {
            minifyEnabled false
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
        }
    }
    useLibrary 'org.apache.http.legacy'
    productFlavors {
    }
}

dependencies {
    compile project(':rateThisApp')
    compile 'com.android.support:support-v4:27.1.1'
    compile 'com.google.android.gms:play-services-location:16.0.0'
    compile files('lib/osmbonuspack_v4.2.9.jar')
    compile files('lib/osmdroid-android-4.1.jar')
    compile files('lib/osmdroid-third-party-4.1.jar')
    compile files('lib/slf4j-android-1.6.1-RC1.jar')
    implementation 'com.android.support:appcompat-v7:27.1.1'
    implementation 'com.android.support:design:27.1.1'
    implementation 'com.google.firebase:firebase-messaging:17.3.4'
    implementation 'com.google.android.gms:play-services-maps:16.0.0'  // GoogleMapを使うために追加する

}

compileSdkVersion 27のこの数字にサポートライブラリのバージョンの最初の数字を合わせます。

サポートライブラリとは、

'com.android.support:support-v4:27.1.1'

いたいなやつのことです。上記の意味は、com.android.support:support-v4というライブラリのバージョン27.1.1ですよ!ってことです。

つまり、compileSdkVersion が27だから、ライブラリのバージョンの最初の数字は27です。

後のやつはどうやって決めるの?というと、下記のサイトで探します。

Recent Support Library Revisions

https://developer.android.com/topic/libraries/support-library/revisions?hl=ja

例えば、上記のサイトを見ると、バージョン27だと、現在(2018/12/04)で
Revision 27.1.1
が最新ということになります。

なので、

'com.android.support:support-v4:27.1.1'

として、27.1.1を指定します。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です