Closed5

【Android】build.gradle周りなどで気になった点のメモ

noknok

はじめに

Androidアプリの、古いプロジェクトの開発環境を更新する必要が発生しました。
設定周りで理解できていない点が多々ありましたので、メモしていきたいと思います。

Android開発環境

項目 更新前バージョン 更新後バージョン
Android Studio 3.1.4 2021.3.1
Gradle 3.5 7.4
Android Gradle Plugin Version 2.2.0 7.3.1
noknok

「Gradle Version」 と 「Android Gradle Plugin Version」とは?

似たようなバージョンが2つあるが、それぞれの違いはなんなのか。

  • 各バージョンの違い
    バージョン 概要
    Gradle version ビルドシステムである、Gradle自体のバージョン
    Android Gradle Plugin Version GradleをAndroidStudioで利用するための、プラグインのバージョン


  • 各バージョンの確認方法
    2つの確認方法があります。
      1. AndroidStudioの、 [File] > [Project Structure] > [Project] を選択して確認
        Gradle_GradlePluginVersion.png

      1. 「gradle-wrapper.properties」と「アプリレベル: build.gradle」ファイルで確認
    // Gradleバージョンを、「gradle-wrapper.properties」ファイルで確認
    distributionUrl=https\://services.gradle.org/distributions/gradle-7.4-bin.zip <= こちら
    
    // Android Gradle Plugin バージョンを、「アプリレベル: build.gradle」ファイルで確認
      buildscript {
            ...
        dependencies {
            classpath 'com.android.tools.build:gradle:7.3.1' <= こちら
        }
    }
    

参考URL

noknok

依存関係を宣言する際の、「compile」「implementation」「api」の違いは?

古いプロジェクトだとまだ「compile」を利用しているが、いつから非推奨になったのか。
また、それぞれの違いは何なのか。

  • 「compile」指定の例
    モジュールレベルの build.gradle ファイルを開いた際の、以下指定のこと。
dependencies {
    compile 'com.android.support:appcompat-v7:+'
}
  • 「compile」が非推奨になったのはいつか
    Android Gradle Plugin 3.0.0 以降から非推奨になった模様
    参考URL:Android Developers | 依存関係構成

  • 「compile」「implementation」「api」の違いはなんなのか
    項目 概要
    compile 動作は「api」と同じ。ただし非推奨
    implementation コンパイル時に、モジュールの依存関係の伝播をしない。ビルド時間が大幅に短縮される特徴がある
    api コンパイル時に、モジュールの依存関係の伝播をする
noknok

サポートライブラリとは何か?AndroidXとの違いは?

build.gradleにサポートライブラリの宣言を追加しているが、サポートライブラリとは何なのか。

dependencies {
    implementation 'com.android.support:appcompat-v7:+'
}


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

    • 新しいAPIレベルで追加されたクラスや機能を、古いバージョンでも使えるようにしてくれるためのライブラリ。その他、便利なクラスや機能が含まれている。
      ※複数バージョンをサポートするアプリ開発で、有効なライブラリという認識。

  • AnroidX(アンロイドエックス)とは

    • Android9(APIレベル28)のリリース移行に導入された、新しいサポートライブラリ。
      現在はAndroidXの利用が推奨されている。

参考URL

noknok

クローズし忘れていました。
環境更新自体は完了しているため、一旦クローズします。

このスクラップは2023/01/02にクローズされました