apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'kotlin-kapt' def keystorePropertiesFile = rootProject.file("keystore.properties") def keystoreProperties = new Properties() if (keystorePropertiesFile.exists()) { keystoreProperties.load(new FileInputStream(keystorePropertiesFile)) } android { compileSdk 31 defaultConfig { applicationId "com.simplemobiletools.gallery.pro" minSdk 21 targetSdk 31 versionCode 371 versionName "6.23.12" setProperty("archivesBaseName", "gallery-$versionCode") vectorDrawables.useSupportLibrary = true } signingConfigs { if (keystorePropertiesFile.exists()) { release { keyAlias keystoreProperties['keyAlias'] keyPassword keystoreProperties['keyPassword'] storeFile file(keystoreProperties['storeFile']) storePassword keystoreProperties['storePassword'] } } } buildTypes { debug { // we cannot change the original package name, else PhotoEditorSDK won't work //applicationIdSuffix ".debug" } release { minifyEnabled true shrinkResources true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' if (keystorePropertiesFile.exists()) { signingConfig signingConfigs.release } } } sourceSets { main.java.srcDirs += 'src/main/kotlin' if (is_proprietary) { main.java.srcDirs += 'src/proprietary/kotlin' } } flavorDimensions "licensing" productFlavors { proprietary {} foss {} prepaid {} } lintOptions { checkReleaseBuilds false abortOnError false } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } packagingOptions { exclude 'META-INF/library_release.kotlin_module' } } dependencies { implementation 'com.github.SimpleMobileTools:Simple-Commons:d88a201d4a' implementation 'com.theartofdev.edmodo:android-image-cropper:2.8.0' implementation 'it.sephiroth.android.exif:library:1.0.1' implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.24' implementation 'androidx.constraintlayout:constraintlayout:2.1.4' implementation 'com.google.android.exoplayer:exoplayer-core:2.9.6' implementation 'com.google.vr:sdk-panowidget:1.180.0' implementation 'com.google.vr:sdk-videowidget:1.180.0' implementation 'org.apache.sanselan:sanselan:0.97-incubator' implementation 'info.androidhive:imagefilters:1.0.7' implementation 'com.caverock:androidsvg-aar:1.4' implementation 'com.github.tibbi:gestureviews:a8e8fa8d27' implementation 'com.github.tibbi:subsampling-scale-image-view:b51482b3fa' implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0' implementation 'com.github.penfeizhou.android.animation:awebp:2.17.0' implementation 'com.github.penfeizhou.android.animation:apng:2.17.0' implementation 'com.squareup.okio:okio:3.0.0' implementation('com.squareup.picasso:picasso:2.71828') { exclude group: 'com.squareup.okhttp3', module: 'okhttp' } compileOnly 'com.squareup.okhttp3:okhttp:4.9.0' kapt 'com.github.bumptech.glide:compiler:4.13.2' kapt 'androidx.room:room-compiler:2.4.2' implementation 'androidx.room:room-runtime:2.4.2' annotationProcessor 'androidx.room:room-compiler:2.4.2' //implementation project(':commons') } // Apply the PESDKPlugin if (is_proprietary) { apply plugin: 'ly.img.android.sdk' imglyConfig { vesdk { enabled true licensePath 'vesdk_license' } pesdk { enabled true licensePath 'pesdk_license' } modules { include 'ui:video-trim' include 'ui:core' include 'ui:text' include 'ui:focus' include 'ui:brush' include 'ui:filter' include 'ui:sticker' include 'ui:overlay' include 'ui:transform' include 'ui:adjustment' include 'backend:serializer' include 'backend:sticker-smart' include 'backend:sticker-animated' include 'assets:font-basic' include 'assets:filter-basic' include 'assets:overlay-basic' include 'assets:sticker-shapes' include 'assets:sticker-emoticons' include 'assets:sticker-animated' } } }