plugins { id("com.android.application") id("org.jetbrains.kotlin.android") id("com.google.gms.services") } android { namespace = "com.notifyhub.viewer" compileSdk = 35 defaultConfig { applicationId = "com.notifyhub.viewer" minSdk = 26 targetSdk = 35 versionCode = 1 versionName = "1.0.0" } buildTypes { debug { buildConfigField("String", "API_BASE_URL", "\"http://192.168.100.176:8000/api/\"") buildConfigField("String", "PINNED_HOST", "\"\"") buildConfigField("String", "PINNED_CERT_HASHES", "\"\"") } release { buildConfigField("String", "API_BASE_URL", "\"https://notifyhub.example.com/api/\"") buildConfigField("String", "PINNED_HOST", "\"notifyhub.example.com\"") buildConfigField("String", "PINNED_CERT_HASHES", "\"sha256/REPLACE_WITH_PUBLIC_KEY_HASH\"") isMinifyEnabled = false } } buildFeatures { buildConfig = true viewBinding = true } compileOptions { sourceCompatibility = JavaVersion.VERSION_17 targetCompatibility = JavaVersion.VERSION_17 } kotlinOptions { jvmTarget = "17" } } dependencies { implementation("androidx.core:core-ktx:1.15.0") implementation("androidx.appcompat:appcompat:1.7.0") implementation("com.google.android.material:material:1.12.0") implementation("androidx.constraintlayout:constraintlayout:2.2.0") implementation("androidx.lifecycle:lifecycle-runtime-ktx:2.8.7") implementation("androidx.swiperefreshlayout:swiperefreshlayout:1.1.0") implementation("androidx.viewpager2:viewpager2:1.1.0") implementation("androidx.fragment:fragment-ktx:1.8.5") implementation("com.squareup.retrofit2:retrofit:2.11.0") implementation("com.squareup.retrofit2:converter-gson:2.11.0") implementation("com.squareup.okhttp3:logging-interceptor:4.12.0") implementation("androidx.security:security-crypto:1.1.0") implementation("io.coil-kt:coil:2.6.0") // Firebase Cloud Messaging (push). google-services.json is gitignored; an // example template ships in the repo. Without it the build still succeeds // but push delivery is disabled at runtime. implementation(platform("com.google.firebase:firebase-bom:33.1.0")) implementation("com.google.firebase:firebase-messaging") }