new: integrate Google Services for app distribution
This commit is contained in:
@@ -21,3 +21,6 @@ node_modules/
|
|||||||
# Media assets (audio .m4a + subtitle .lrc) — large/licensed, kept out of Version Control.
|
# Media assets (audio .m4a + subtitle .lrc) — large/licensed, kept out of Version Control.
|
||||||
*.m4a
|
*.m4a
|
||||||
*.lrc
|
*.lrc
|
||||||
|
|
||||||
|
# Firebase config (App Distribution) — per-developer, not tracked (see google-services.example.json)
|
||||||
|
androidApp/google-services.json
|
||||||
|
|||||||
@@ -4,6 +4,14 @@ plugins {
|
|||||||
alias(libs.plugins.androidApplication)
|
alias(libs.plugins.androidApplication)
|
||||||
alias(libs.plugins.composeMultiplatform)
|
alias(libs.plugins.composeMultiplatform)
|
||||||
alias(libs.plugins.composeCompiler)
|
alias(libs.plugins.composeCompiler)
|
||||||
|
// Used for App Distribution
|
||||||
|
alias(libs.plugins.googleServices) apply false
|
||||||
|
}
|
||||||
|
|
||||||
|
// Apply Google Services only when the Firebase config is present: google-services.json is not
|
||||||
|
// tracked in git (see google-services.example.json), so builds must work without it.
|
||||||
|
if (file("google-services.json").exists()) {
|
||||||
|
apply(plugin = libs.plugins.googleServices.get().pluginId)
|
||||||
}
|
}
|
||||||
|
|
||||||
kotlin {
|
kotlin {
|
||||||
|
|||||||
@@ -0,0 +1,29 @@
|
|||||||
|
{
|
||||||
|
"project_info": {
|
||||||
|
"project_number": "000000000000",
|
||||||
|
"project_id": "your-firebase-project-id",
|
||||||
|
"storage_bucket": "your-firebase-project-id.firebasestorage.app"
|
||||||
|
},
|
||||||
|
"client": [
|
||||||
|
{
|
||||||
|
"client_info": {
|
||||||
|
"mobilesdk_app_id": "1:000000000000:android:0000000000000000000000",
|
||||||
|
"android_client_info": {
|
||||||
|
"package_name": "bzh.ajaury.chombev"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"oauth_client": [],
|
||||||
|
"api_key": [
|
||||||
|
{
|
||||||
|
"current_key": "YOUR_FIREBASE_API_KEY"
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"services": {
|
||||||
|
"appinvite_service": {
|
||||||
|
"other_platform_oauth_client": []
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
],
|
||||||
|
"configuration_version": "1"
|
||||||
|
}
|
||||||
@@ -7,4 +7,5 @@ plugins {
|
|||||||
alias(libs.plugins.composeCompiler) apply false
|
alias(libs.plugins.composeCompiler) apply false
|
||||||
alias(libs.plugins.kotlinJvm) apply false
|
alias(libs.plugins.kotlinJvm) apply false
|
||||||
alias(libs.plugins.kotlinMultiplatform) apply false
|
alias(libs.plugins.kotlinMultiplatform) apply false
|
||||||
|
alias(libs.plugins.googleServices) apply false
|
||||||
}
|
}
|
||||||
@@ -11,6 +11,7 @@ navigation3 = "1.1.1"
|
|||||||
composeMultiplatform = "1.11.1"
|
composeMultiplatform = "1.11.1"
|
||||||
composeIconsExtended = "1.7.3"
|
composeIconsExtended = "1.7.3"
|
||||||
glitchtips = "8.47.0"
|
glitchtips = "8.47.0"
|
||||||
|
googleServices = "4.5.0"
|
||||||
kotlin = "2.4.0"
|
kotlin = "2.4.0"
|
||||||
kotlinWrappers = "2026.7.0"
|
kotlinWrappers = "2026.7.0"
|
||||||
kotlinxBrowser = "0.5.0"
|
kotlinxBrowser = "0.5.0"
|
||||||
@@ -68,6 +69,7 @@ androidApplication = { id = "com.android.application", version.ref = "agp" }
|
|||||||
androidMultiplatformLibrary = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" }
|
androidMultiplatformLibrary = { id = "com.android.kotlin.multiplatform.library", version.ref = "agp" }
|
||||||
composeMultiplatform = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" }
|
composeMultiplatform = { id = "org.jetbrains.compose", version.ref = "composeMultiplatform" }
|
||||||
composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
composeCompiler = { id = "org.jetbrains.kotlin.plugin.compose", version.ref = "kotlin" }
|
||||||
|
googleServices = { id = "com.google.gms.google-services", version.ref = "googleServices" }
|
||||||
kotlinJvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
kotlinJvm = { id = "org.jetbrains.kotlin.jvm", version.ref = "kotlin" }
|
||||||
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
kotlinMultiplatform = { id = "org.jetbrains.kotlin.multiplatform", version.ref = "kotlin" }
|
||||||
kotlinSerialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlinSerialization"}
|
kotlinSerialization = { id = "org.jetbrains.kotlin.plugin.serialization", version.ref = "kotlinSerialization"}
|
||||||
Reference in New Issue
Block a user