@@ -40,6 +40,8 @@ val selectableVariants = listOf(
40
40
" playProdBenchmark" ,
41
41
" playProdInstrumentation" ,
42
42
" playProdRelease" ,
43
+ " playFossProdRelease" ,
44
+ " playGmsProdRelease" ,
43
45
" playStagingDebug" ,
44
46
" playStagingCanary" ,
45
47
" playStagingSpinner" ,
@@ -81,7 +83,7 @@ android {
81
83
buildToolsVersion = signalBuildToolsVersion
82
84
compileSdkVersion = signalCompileSdkVersion
83
85
84
- flavorDimensions + = listOf (" distribution" , " environment" )
86
+ flavorDimensions + = listOf (" distribution" , " gms " , " environment" )
85
87
useLibrary(" org.apache.http.legacy" )
86
88
testBuildType = " instrumentation"
87
89
@@ -352,6 +354,17 @@ android {
352
354
buildConfigField(" String" , " BUILD_DISTRIBUTION_TYPE" , " \" nightly\" " )
353
355
}
354
356
357
+ create(" gms" ) {
358
+ dimension = " gms"
359
+ isDefault = true
360
+ buildConfigField(" boolean" , " USE_OSM" , " false" )
361
+ }
362
+
363
+ create(" foss" ) {
364
+ dimension = " gms"
365
+ buildConfigField(" boolean" , " USE_OSM" , " true" )
366
+ }
367
+
355
368
create(" prod" ) {
356
369
dimension = " environment"
357
370
@@ -507,13 +520,15 @@ dependencies {
507
520
implementation(libs.androidx.asynclayoutinflater)
508
521
implementation(libs.androidx.asynclayoutinflater.appcompat)
509
522
implementation(libs.androidx.emoji2)
510
- implementation (libs.firebase.messaging) {
523
+ " gmsImplementation " (libs.firebase.messaging) {
511
524
exclude(group = " com.google.firebase" , module = " firebase-core" )
512
525
exclude(group = " com.google.firebase" , module = " firebase-analytics" )
513
526
exclude(group = " com.google.firebase" , module = " firebase-measurement-connector" )
514
527
}
515
- implementation(libs.google.play.services.maps)
516
- implementation(libs.google.play.services.auth)
528
+ " gmsImplementation" (libs.google.play.services.maps)
529
+ " gmsImplementation" (libs.google.play.services.auth)
530
+ " fossImplementation" (project(" :libfakegms" ))
531
+ " fossImplementation" (libs.osmdroid)
517
532
implementation(libs.bundles.media3)
518
533
implementation(libs.conscrypt.android)
519
534
implementation(libs.signal.aesgcmprovider)
@@ -550,7 +565,7 @@ dependencies {
550
565
implementation(libs.accompanist.permissions)
551
566
implementation(libs.kotlin.stdlib.jdk8)
552
567
implementation(libs.kotlin.reflect)
553
- implementation (libs.kotlinx.coroutines.play.services)
568
+ " gmsImplementation " (libs.kotlinx.coroutines.play.services)
554
569
implementation(libs.jackson.module.kotlin)
555
570
implementation(libs.rxjava3.rxandroid)
556
571
implementation(libs.rxjava3.rxkotlin)
0 commit comments