Instabar/app/build.gradle

243 lines
8.2 KiB
Groovy
Raw Normal View History

2021-12-19 04:52:01 +01:00
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: "androidx.navigation.safeargs"
apply plugin: 'kotlin-kapt'
def getGitHash = { ->
def stdout = new ByteArrayOutputStream()
exec {
commandLine 'git', 'rev-parse', '--short', 'HEAD'
standardOutput = stdout
}
return stdout.toString().trim()
}
android {
2022-06-07 05:47:45 +02:00
compileSdkVersion 32
2021-12-19 04:52:01 +01:00
defaultConfig {
applicationId 'awais.instagrabber'
minSdkVersion 21
2021-12-20 10:20:44 +01:00
targetSdkVersion 31
2021-12-19 04:52:01 +01:00
2021-12-20 10:20:44 +01:00
versionCode 66
versionName '19.2.5'
2021-12-19 04:52:01 +01:00
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
vectorDrawables.generatedDensities = []
javaCompileOptions {
annotationProcessorOptions {
arguments = ["room.schemaLocation": "$projectDir/schemas".toString()]
}
}
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}
sourceSets {
androidTest.assets.srcDirs += files("$projectDir/schemas".toString())
}
compileOptions {
// Flag to enable support for the new language APIs
coreLibraryDesugaringEnabled true
targetCompatibility JavaVersion.VERSION_1_8
sourceCompatibility JavaVersion.VERSION_1_8
}
buildFeatures { viewBinding true }
aaptOptions { additionalParameters '--no-version-vectors' }
buildTypes {
debug {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
2021-12-20 11:06:15 +01:00
signingConfig signingConfigs.debug
2021-12-19 04:52:01 +01:00
}
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}
flavorDimensions "repo"
2021-12-20 11:06:15 +01:00
signingConfigs {
debug {
storeFile file('dev_keystore.jks')
keyAlias 'alias'
storePassword 'xrj45yWGLbsO7W0v'
keyPassword 'xrj45yWGLbsO7W0v'
}
}
2021-12-19 04:52:01 +01:00
productFlavors {
github {
dimension "repo"
// versionNameSuffix "-github" // appended in assemble task
buildConfigField("boolean", "isPre", "false")
}
fdroid {
dimension "repo"
versionNameSuffix "-fdroid"
buildConfigField("boolean", "isPre", "false")
}
}
splits {
// Configures multiple APKs based on ABI.
abi {
// Enables building multiple APKs per ABI.
enable project.hasProperty("split") && !gradle.startParameter.taskNames.isEmpty() && gradle.startParameter.taskNames.get(0).contains('Release')
// By default all ABIs are included, so use reset() and include to specify that we only
// want APKs for x86 and x86_64.
// Resets the list of ABIs that Gradle should create APKs for to none.
reset()
// Specifies a list of ABIs that Gradle should create APKs for.
include "x86", "x86_64", "arm64-v8a", "armeabi-v7a"
2021-12-19 04:52:01 +01:00
// Specifies that we want to also generate a universal APK that includes all ABIs.
universalApk true
}
}
android.applicationVariants.all { variant ->
if (variant.flavorName != "github") return
variant.outputs.all { output ->
def builtType = variant.buildType.name
def versionName = variant.versionName
// def versionCode = variant.versionCode
def flavor = variant.flavorName
def abi = output.getFilter(com.android.build.OutputFile.ABI)
2021-12-21 05:57:17 +01:00
outputFileName = new File("Instabar_" + (abi ? abi : "universal") + ".apk")
2021-12-19 04:52:01 +01:00
}
}
packagingOptions {
// Exclude file to avoid
// Error: Duplicate files during packaging of APK
exclude 'META-INF/LICENSE.md'
exclude 'META-INF/LICENSE-notice.md'
exclude 'META-INF/atomicfu.kotlin_module'
exclude 'META-INF/AL2.0'
exclude 'META-INF/LGPL2.1'
}
testOptions.unitTests {
includeAndroidResources = true
}
}
configurations.all {
resolutionStrategy.cacheChangingModulesFor 0, 'seconds'
}
dependencies {
coreLibraryDesugaring 'com.android.tools:desugar_jdk_libs:1.1.5'
Bump exoplayer_version from 2.16.1 to 2.17.1 (#62) * Bump exoplayer_version from 2.16.1 to 2.17.1 Bumps `exoplayer_version` from 2.16.1 to 2.17.1. Updates `exoplayer-core` from 2.16.1 to 2.17.1 - [Release notes](https://github.com/google/ExoPlayer/releases) - [Changelog](https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md) - [Commits](https://github.com/google/ExoPlayer/compare/r2.16.1...r2.17.1) Updates `exoplayer-dash` from 2.16.1 to 2.17.1 - [Release notes](https://github.com/google/ExoPlayer/releases) - [Changelog](https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md) - [Commits](https://github.com/google/ExoPlayer/compare/r2.16.1...r2.17.1) Updates `exoplayer-ui` from 2.16.1 to 2.17.1 - [Release notes](https://github.com/google/ExoPlayer/releases) - [Changelog](https://github.com/google/ExoPlayer/blob/release-v2/RELEASENOTES.md) - [Commits](https://github.com/google/ExoPlayer/compare/r2.16.1...r2.17.1) --- updated-dependencies: - dependency-name: com.google.android.exoplayer:exoplayer-core dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: com.google.android.exoplayer:exoplayer-dash dependency-type: direct:production update-type: version-update:semver-minor - dependency-name: com.google.android.exoplayer:exoplayer-ui dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> Co-authored-by: Wisest_wizard <76830230+suhan-paradkar@users.noreply.github.com>
2022-06-07 12:23:19 +02:00
def exoplayer_version = '2.17.1'
2021-12-19 04:52:01 +01:00
implementation 'com.google.android.material:material:1.6.1'
2021-12-19 04:52:01 +01:00
implementation "com.google.android.exoplayer:exoplayer-core:$exoplayer_version"
implementation "com.google.android.exoplayer:exoplayer-dash:$exoplayer_version"
implementation "com.google.android.exoplayer:exoplayer-ui:$exoplayer_version"
implementation "androidx.recyclerview:recyclerview:1.2.1"
implementation 'androidx.swiperefreshlayout:swiperefreshlayout:1.1.0'
implementation "androidx.viewpager2:viewpager2:1.0.0"
implementation "androidx.constraintlayout:constraintlayout:2.1.4"
implementation "androidx.preference:preference:1.2.0"
2021-12-19 04:52:01 +01:00
implementation 'androidx.palette:palette:1.0.0'
implementation 'androidx.documentfile:documentfile:1.0.1'
implementation 'com.google.guava:guava:31.1-android'
2021-12-19 04:52:01 +01:00
def core_version = "1.8.0"
2021-12-19 04:52:01 +01:00
implementation "androidx.core:core:$core_version"
// Fragment
implementation "androidx.fragment:fragment-ktx:1.4.1"
2021-12-19 04:52:01 +01:00
// Lifecycle
implementation "androidx.lifecycle:lifecycle-extensions:2.2.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.4.1"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.4.1"
2021-12-19 04:52:01 +01:00
// Navigation
implementation "androidx.navigation:navigation-fragment-ktx:$rootProject.nav_version"
implementation "androidx.navigation:navigation-ui-ktx:$rootProject.nav_version"
// Room
def room_version = "2.4.2"
2021-12-19 04:52:01 +01:00
implementation "androidx.room:room-runtime:$room_version"
implementation "androidx.room:room-guava:$room_version"
implementation "androidx.room:room-ktx:$room_version"
kapt "androidx.room:room-compiler:$room_version"
annotationProcessor "androidx.room:room-compiler:$room_version"
// CameraX
def camerax_version = "1.2.0-alpha02"
2021-12-19 04:52:01 +01:00
implementation "androidx.camera:camera-camera2:$camerax_version"
implementation "androidx.camera:camera-lifecycle:$camerax_version"
implementation "androidx.camera:camera-view:1.2.0-alpha02"
2021-12-19 04:52:01 +01:00
// EmojiCompat
def emoji_compat_version = "1.1.0"
implementation "androidx.emoji:emoji:$emoji_compat_version"
implementation "androidx.emoji:emoji-appcompat:$emoji_compat_version"
// Work
def work_version = '2.7.1'
2021-12-19 04:52:01 +01:00
implementation "androidx.work:work-runtime:$work_version"
implementation "androidx.work:work-runtime-ktx:$work_version"
implementation "ru.gildor.coroutines:kotlin-coroutines-okhttp:1.0"
implementation 'com.facebook.fresco:fresco:2.6.0'
implementation 'com.facebook.fresco:animated-webp:2.6.0'
implementation 'com.facebook.fresco:webpsupport:2.6.0'
2021-12-19 04:52:01 +01:00
implementation 'com.squareup.retrofit2:retrofit:2.9.0'
implementation 'com.squareup.retrofit2:converter-scalars:2.9.0'
implementation 'com.squareup.retrofit2:converter-gson:2.9.0'
implementation 'org.apache.commons:commons-imaging:1.0-alpha3'
2021-12-19 04:52:01 +01:00
implementation 'com.github.skydoves:balloon:1.4.5'
2021-12-19 04:52:01 +01:00
implementation 'com.github.ammargitham:AutoLinkTextViewV2:3.2.0'
implementation 'com.github.ammargitham:uCrop:2.3-non-native'
implementation 'com.github.ammargitham:android-gpuimage:2.1.1-beta4'
testImplementation 'org.junit.jupiter:junit-jupiter:5.8.2'
2021-12-19 04:52:01 +01:00
testImplementation "androidx.test.ext:junit-ktx:1.1.3"
testImplementation "androidx.test:core-ktx:1.4.0"
testImplementation "androidx.arch.core:core-testing:2.1.0"
testImplementation "org.robolectric:robolectric:4.8.1"
testImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.2'
2021-12-19 04:52:01 +01:00
androidTestImplementation 'org.junit.jupiter:junit-jupiter:5.7.2'
androidTestImplementation 'androidx.test:core:1.4.0'
androidTestImplementation 'com.android.support:support-annotations:28.0.0'
androidTestImplementation 'com.android.support.test:runner:1.0.2'
androidTestImplementation "androidx.room:room-testing:2.4.2"
2021-12-19 04:52:01 +01:00
androidTestImplementation "androidx.arch.core:core-testing:2.1.0"
androidTestImplementation 'org.jetbrains.kotlinx:kotlinx-coroutines-test:1.6.2'
2021-12-19 04:52:01 +01:00
}