11plugins {
22 id ' com.android.application'
33 id ' org.jetbrains.kotlin.android'
4+ id ' kotlin-kapt'
5+ id ' dagger.hilt.android.plugin'
6+ id ' com.google.android.libraries.mapsplatform.secrets-gradle-plugin'
47}
58
69android {
@@ -10,9 +13,10 @@ android {
1013 defaultConfig {
1114 applicationId " com.mapcode"
1215 minSdk 21
16+ // noinspection OldTargetApi wait for sources to be released before upgrading
1317 targetSdk 32
1418 versionCode 1
15- versionName " 1.0"
19+ versionName " 1.0.0 "
1620
1721 testInstrumentationRunner " androidx.test.runner.AndroidJUnitRunner"
1822 vectorDrawables {
@@ -22,16 +26,26 @@ android {
2226
2327 buildTypes {
2428 release {
25- minifyEnabled false
29+ minifyEnabled true
2630 proguardFiles getDefaultProguardFile(' proguard-android-optimize.txt' ), ' proguard-rules.pro'
2731 }
32+ benchmark {
33+ initWith buildTypes. release
34+ signingConfig signingConfigs. debug
35+ matchingFallbacks = [' release' ]
36+ proguardFiles getDefaultProguardFile(' proguard-android-optimize.txt' ), ' proguard-benchmark-rules.pro'
37+ debuggable false
38+ }
2839 }
2940 compileOptions {
3041 sourceCompatibility JavaVersion . VERSION_1_8
3142 targetCompatibility JavaVersion . VERSION_1_8
3243 }
3344 kotlinOptions {
3445 jvmTarget = ' 1.8'
46+ freeCompilerArgs + = [
47+ " -Xopt-in=kotlin.RequiresOptIn"
48+ ]
3549 }
3650 buildFeatures {
3751 compose true
@@ -47,17 +61,56 @@ android {
4761}
4862
4963dependencies {
50- implementation ' com.mapcode:mapcode:2.4.14'
51- implementation ' androidx.core:core-ktx:1.7.0'
52- implementation ' androidx.lifecycle:lifecycle-runtime-ktx:2.4.1'
53- implementation ' androidx.activity:activity-compose:1.4.0'
64+ // google
65+ implementation ' com.google.maps.android:maps-compose:2.2.0'
66+ implementation ' com.google.android.gms:play-services-maps:18.0.2'
67+ implementation " com.google.dagger:hilt-android:2.42"
68+ implementation ' androidx.hilt:hilt-navigation-compose:1.0.0'
69+ implementation ' com.google.android.gms:play-services-location:20.0.0'
70+ kapt " com.google.dagger:hilt-compiler:2.42"
71+ implementation " com.google.android.material:material:1.6.1"
72+
73+ // android
74+ implementation ' androidx.core:core-ktx:1.8.0'
75+ implementation " androidx.lifecycle:lifecycle-viewmodel-ktx:2.5.0"
76+ implementation ' androidx.lifecycle:lifecycle-runtime-ktx:2.5.0'
77+ implementation ' androidx.activity:activity-compose:1.5.0'
78+ // noinspection GradleDependency
5479 implementation " androidx.compose.ui:ui:$compose_ui_version "
5580 implementation " androidx.compose.ui:ui-tooling-preview:$compose_ui_version "
5681 implementation ' androidx.compose.material:material:1.1.1'
82+ implementation " androidx.navigation:navigation-compose:2.5.0"
83+ implementation " androidx.compose.foundation:foundation:1.3.0-alpha01"
84+ implementation ' com.google.accompanist:accompanist-permissions:0.24.10-beta'
85+ implementation " com.google.accompanist:accompanist-systemuicontroller:0.17.0"
86+ implementation " com.google.accompanist:accompanist-insets:0.23.1"
87+ implementation " androidx.datastore:datastore-preferences:1.0.0"
88+ implementation " androidx.core:core-splashscreen:1.0.0-rc01"
89+ implementation " androidx.compose.material3:material3-window-size-class:1.0.0-alpha14"
90+
91+ // other
92+ implementation ' com.jakewharton.timber:timber:5.0.1'
93+ // noinspection GradleDependency. Issue with R8 on Android 8.0 or lower
94+ implementation ' com.mapcode:mapcode:2.4.14'
95+
96+ // debug
97+ debugImplementation " androidx.compose.ui:ui-tooling:$compose_ui_version "
98+
99+ // testing
57100 testImplementation ' junit:junit:4.13.2'
101+ testImplementation ' com.willowtreeapps.assertk:assertk-jvm:0.25'
102+ testImplementation ' org.mockito.kotlin:mockito-kotlin:4.0.0'
103+ testImplementation ' org.mockito:mockito-core:4.6.1'
104+ testImplementation ' org.mockito:mockito-inline:4.6.1'
105+ testImplementation " androidx.arch.core:core-testing:2.1.0"
106+ testImplementation " androidx.test:core-ktx:1.4.0"
107+ testImplementation ' org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.2'
108+ testImplementation " androidx.compose.ui:ui-test-manifest:$compose_ui_version "
109+
110+ androidTestImplementation ' com.willowtreeapps.assertk:assertk-jvm:0.25'
58111 androidTestImplementation ' androidx.test.ext:junit:1.1.3'
59112 androidTestImplementation ' androidx.test.espresso:espresso-core:3.4.0'
60113 androidTestImplementation " androidx.compose.ui:ui-test-junit4:$compose_ui_version "
61- debugImplementation " androidx.compose.ui:ui-tooling: $c ompose_ui_version "
62- debugImplementation " androidx.compose.ui:ui-test-manifest: $c ompose_ui_version "
114+ androidTestImplementation ' org.mockito.kotlin:mockito-kotlin:4.0.0 '
115+ androidTestImplementation ' org.mockito:mockito-android:4.6.1 '
63116}
0 commit comments