def localProperties = new Properties() def localPropertiesFile = rootProject.file('local.properties') if (localPropertiesFile.exists()) { localPropertiesFile.withReader('UTF-8') { reader -> localProperties.load(reader) } } def flutterRoot = localProperties.getProperty('flutter.sdk') if (flutterRoot == null) { throw new GradleException("Flutter SDK not found. Define location with flutter.sdk in the local.properties file.") } def flutterVersionCode = localProperties.getProperty('flutter.versionCode') if (flutterVersionCode == null) { flutterVersionCode = '12' } def flutterVersionName = localProperties.getProperty('flutter.versionName') if (flutterVersionName == null) { flutterVersionName = '1.1.2' } apply plugin: 'com.android.application' // START: FlutterFire Configuration apply plugin: 'com.google.gms.google-services' // END: FlutterFire Configuration apply plugin: 'kotlin-android' apply from: "$flutterRoot/packages/flutter_tools/gradle/flutter.gradle" def keystoreProperties = new Properties() def keystorePropertiesFile = rootProject.file('key.properties') // Load keystore properties if the file exists if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) } android { namespace "com.mobileapp.store.ride" compileSdk 35 // Remove ndkVersion and let Gradle use the default // ndkVersion "27.0.12077973" externalNativeBuild { cmake { path "src/main/cpp/CMakeLists.txt" version "3.31.5" } } defaultConfig { applicationId = "com.mobileapp.store.ride" minSdk = 23 targetSdk = flutter.targetSdkVersion // Use flutter.targetSdkVersion versionCode = 133 versionName = '2.0.133' multiDexEnabled = true ndk { abiFilters "armeabi-v7a", "arm64-v8a", "x86", "x86_64" } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 coreLibraryDesugaringEnabled true } kotlinOptions { jvmTarget = '1.8' } sourceSets { main { jniLibs.srcDirs = ['src/main/jniLibs'] } } signingConfigs { release { // Check if properties are defined before using them storeFile = keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null storePassword = keystoreProperties['storePassword'] keyAlias = keystoreProperties['keyAlias'] keyPassword = keystoreProperties['keyPassword'] } } buildTypes { release { signingConfig signingConfigs.release minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } } flutter { source '../..' } dependencies { implementation "org.jetbrains.kotlin:kotlin-stdlib-jdk7:$kotlin_version" coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:2.1.5' implementation "com.stripe:stripe-android:21.4.2" implementation 'com.stripe:paymentsheet:21.4.2' implementation 'com.scottyab:rootbeer-lib:0.1.0' implementation 'com.google.android.gms:play-services-safetynet:18.1.0' }