Phase 2 of multi-environment setup. Adds Firebase core, Crashlytics, Analytics, Remote Config, Performance, Messaging and flutter_local_notifications, plus full APNs configuration for iOS push. - Wire setupFirebase(env) and setupNotifications() in initApp - Add firebase_options for dev and staging via flutterfire (sf-platform-pre) - Register google-services / firebase-perf / crashlytics gradle plugins - Add per-flavor GoogleService-Info.plist with Build Phase script that copies the right plist into the .app bundle based on \$CONFIGURATION - Bump iOS deployment target 13.0 -> 15.0 (required by firebase_analytics) - Pin flutter_local_notifications to ^19.4.2 (v20+ needs Dart SDK >=3.10) - Add aps-environment to staging (development) and production entitlements; development flavor intentionally excluded (no App Store Connect entry) - Fix AppDelegate.swift to call super.application after forwarding to AntelopAppDelegate, otherwise Firebase Messaging swizzling breaks and the APNs token is never captured - Crashlytics reports in all builds (debug + release) for early detection - Tag analytics events with env user property per flavor - App Check intentionally not included (debug-token friction with large QA team); can be re-added release-only later
30 lines
981 B
Kotlin
30 lines
981 B
Kotlin
pluginManagement {
|
|
val flutterSdkPath =
|
|
run {
|
|
val properties = java.util.Properties()
|
|
file("local.properties").inputStream().use { properties.load(it) }
|
|
val flutterSdkPath = properties.getProperty("flutter.sdk")
|
|
require(flutterSdkPath != null) { "flutter.sdk not set in local.properties" }
|
|
flutterSdkPath
|
|
}
|
|
|
|
includeBuild("$flutterSdkPath/packages/flutter_tools/gradle")
|
|
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
gradlePluginPortal()
|
|
}
|
|
}
|
|
|
|
plugins {
|
|
id("dev.flutter.flutter-plugin-loader") version "1.0.0"
|
|
id("com.android.application") version "8.9.1" apply false
|
|
id("org.jetbrains.kotlin.android") version "2.1.0" apply false
|
|
id("com.google.gms.google-services") version "4.4.2" apply false
|
|
id("com.google.firebase.firebase-perf") version "1.4.2" apply false
|
|
id("com.google.firebase.crashlytics") version "3.0.2" apply false
|
|
}
|
|
|
|
include(":app")
|