最新バージョンのAndroid Studio Giraffe(Android Studio Giraffe | 2022.3.1 Patch)を使用中にRealmを導入しようとしたところ、ビルドエラーに遭遇しました。以下はその問題と解決策についてのメモです。
エラーメッセージ
ビルド時に以下のエラーが発生し、ビルドが成功しません。
Build file '/Users/hiro/AndroidStudioProjects/MyApplication10/app/build.gradle' line: 6 An exception occurred applying plugin request [id: 'realm-android'] > Failed to apply plugin 'realm-android'. > API 'android.registerTransform' is removed.
背景
Android Studio Giraffeでは、Gradleというツールを使用してAndroidアプリケーションをビルドします。新しいAndroid Gradle Plugin(バージョン8以降)が導入され、その結果、以前のバージョンで使用されていた ‘android.registerTransform’ API が削除されました。この変更により、Realmプラグインが正常に動作しなくなりました。
解決策
以下の手順に従って、Realmプラグインの問題を解決できます。
-
以下の説明はGroovy DSLを採用しているプロジェクトが前提です。プロジェクトがGroovy DSLを採用していることを確認してください。Groovyを使用するには、プロジェクトを作成する際に “Build configuration language” で “Groovy DSL” を選択します。もしsettings.gradleの拡張子が.ktsである場合、Garoovyではありません。
-
次の手順を実行します。
settings.gradle
(Project Settings)を開きます。dependencyResolutionManagement
内のrepositories
に、jcenter()
を追加します。
dependencyResolutionManagement { repositories { google() mavenCentral() jcenter() // これを追加 } }
-
build.gradle
(Project: プロジェクト名)を開き、以下の行を追加します。buildscript { dependencies { classpath "io.realm:realm-gradle-plugin:10.13.3-transformer-api" } }
-
build.gradle
(Module: app)を開き、以下の行を追加します。plugins { id 'kotlin-kapt' id 'realm-android' } dependencies { // 他の依存関係 implementation 'io.realm:android-adapters:2.1.1' }
これらのステップに従うことで、Realmプラグインの設定エラーを解決し、ビルドが正常に通るはずです。