発車予定表示機能のデータモジュールを作成します。
データの永続化はRoomで行います。
バージョンカタログファイルにRoomのバージョン定義を追記します。
[versions]
:
room = "2.8.2" # https://mvnrepository.com/artifact/androidx.room/room-runtime
[libraries]
:
room-runtime = { module = "androidx.room:room-runtime", version.ref = "room" }
room-compiler = { module = "androidx.room:room-compiler", version.ref = "room" }
room-ktx = { module = "androidx.room:room-ktx", version.ref = "room" }
追記後、『Sync Now』で内容をプロジェクトに反映させます。
uiモジュールの作成と同様に、トップディレクトリで:feature:depart:dataを作成し、javaディレクトリ名の変更、および、サンプルテストクラスの削除を行います。
:feature:depart:dataモジュールのbuild.gradle.ktsにLibraryConfigurePluginを適用します。
plugins {
alias(libs.plugins.android.library)
alias(libs.plugins.kotlin.android)
id("build.logic.library.configure")
}
android {
namespace = "jp.co.progress_llc.portal.feature.depart.data"
compileSdk {
version = release(36)
}
defaultConfig {
minSdk = 28
testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
consumerProguardFiles("consumer-rules.pro")
}
buildTypes {
release {
isMinifyEnabled = false
proguardFiles(
getDefaultProguardFile("proguard-android-optimize.txt"),
"proguard-rules.pro"
)
}
}
compileOptions {
sourceCompatibility = JavaVersion.VERSION_11
targetCompatibility = JavaVersion.VERSION_11
}
kotlinOptions {
jvmTarget = "11"
}
}
dependencies {
implementation(libs.androidx.core.ktx)
implementation(libs.androidx.appcompat)
implementation(libs.material)
testImplementation(libs.junit)
androidTestImplementation(libs.androidx.junit)
androidTestImplementation(libs.androidx.espresso.core)
implementation(libs.room.runtime)
implementation(libs.room.ktx)
ksp(libs.room.compiler)
implementation(libs.hilt.android)
ksp(libs.hilt.compiler)
適用後、『Sync Now』で内容をプロジェクトに反映させます。