106 lines
3.6 KiB
Groovy
106 lines
3.6 KiB
Groovy
plugins {
|
|
id "com.android.application"
|
|
// START: FlutterFire Configuration
|
|
id 'com.google.gms.google-services'
|
|
// END: FlutterFire Configuration
|
|
id "kotlin-android"
|
|
// The Flutter Gradle Plugin must be applied after the Android and Kotlin Gradle plugins.
|
|
id "dev.flutter.flutter-gradle-plugin"
|
|
}
|
|
|
|
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.Intaleq.intaleq"
|
|
compileSdk = 36
|
|
ndkVersion "29.0.14033849"
|
|
|
|
compileOptions {
|
|
sourceCompatibility = JavaVersion.VERSION_17
|
|
targetCompatibility = JavaVersion.VERSION_17
|
|
coreLibraryDesugaringEnabled true
|
|
}
|
|
externalNativeBuild {
|
|
cmake {
|
|
path "src/main/cpp/CMakeLists.txt"
|
|
version "3.22.1"
|
|
}
|
|
}
|
|
|
|
|
|
kotlinOptions {
|
|
jvmTarget = "17"
|
|
}
|
|
sourceSets {
|
|
main {
|
|
jniLibs.srcDirs = ['src/main/jniLibs']
|
|
}
|
|
}
|
|
|
|
defaultConfig {
|
|
// TODO: Specify your own unique Application ID (https://developer.android.com/studio/build/application-id.html).
|
|
applicationId = "com.Intaleq.intaleq"
|
|
// You can update the following values to match your application needs.
|
|
// For more information, see: https://flutter.dev/to/review-gradle-config.
|
|
minSdkVersion = 24
|
|
targetSdk = 36
|
|
versionCode = 65
|
|
versionName = '1.1.65'
|
|
multiDexEnabled = true
|
|
ndk {
|
|
abiFilters "armeabi-v7a", "arm64-v8a"
|
|
}
|
|
// استدعاء المفتاح من ملف key.properties
|
|
manifestPlaceholders += [mapsApiKey: keystoreProperties['mapsApiKey'] ?: ""]
|
|
|
|
}
|
|
|
|
signingConfigs {
|
|
release {
|
|
// Defensively check if properties exist to avoid NullPointerException in BundleTool
|
|
if (keystoreProperties.isEmpty()) {
|
|
println "BUILD_LOG: ERROR - No properties found in key.properties. Release build will fail."
|
|
} else {
|
|
storeFile = keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
|
|
storePassword = keystoreProperties['storePassword']
|
|
keyAlias = keystoreProperties['keyAlias']
|
|
keyPassword = keystoreProperties['keyPassword']
|
|
|
|
// Final check to ensure no crucial signing variable is null
|
|
if (!storeFile || !storePassword || !keyAlias || !keyPassword) {
|
|
println "BUILD_LOG: ERROR - One or more signing properties are NULL. Check key.properties."
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
// Only assign signingConfig if the release config is valid
|
|
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'
|
|
implementation 'com.google.android.gms:play-services-location:21.3.0'
|
|
}
|