mirror of
https://codeberg.org/Bazsalanszky/Infinity-For-Lemmy.git
synced 2024-11-07 03:07:26 +01:00
132bd354cd
* In anonymous mode, fixed bug in CheckIsFollowingUser.java that does not check if accountName is null or not, which prevents room from retrieving SubscribedUserData to check if the user is followed or not. Also updated Room version to 2.4.2 to be compatible with M1 macbook. * Simplified SubscribedUserData accountName null check code
190 lines
7.1 KiB
Groovy
190 lines
7.1 KiB
Groovy
apply plugin: 'com.android.application'
|
|
|
|
android {
|
|
compileSdkVersion 31
|
|
defaultConfig {
|
|
applicationId "ml.docilealligator.infinityforreddit"
|
|
minSdkVersion 21
|
|
targetSdkVersion 31
|
|
versionCode 99
|
|
versionName "5.2.0"
|
|
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
javaCompileOptions {
|
|
annotationProcessorOptions {
|
|
arguments = [eventBusIndex: 'ml.docilealligator.infinityforreddit.EventBusIndex']
|
|
}
|
|
}
|
|
}
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled false
|
|
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
}
|
|
minifiedRelease {
|
|
initWith buildTypes.release
|
|
zipAlignEnabled true
|
|
minifyEnabled true
|
|
shrinkResources true
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
}
|
|
}
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_11
|
|
targetCompatibility JavaVersion.VERSION_11
|
|
}
|
|
|
|
lintOptions {
|
|
disable 'MissingTranslation'
|
|
}
|
|
|
|
bundle {
|
|
language {
|
|
enableSplit = false
|
|
}
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
/** AndroidX **/
|
|
implementation 'androidx.appcompat:appcompat:1.3.1'
|
|
implementation 'androidx.biometric:biometric:1.2.0-alpha04'
|
|
implementation 'androidx.browser:browser:1.4.0'
|
|
implementation 'androidx.cardview:cardview:1.0.0'
|
|
implementation 'androidx.constraintlayout:constraintlayout:2.1.2'
|
|
implementation 'androidx.legacy:legacy-support-v4:1.0.0'
|
|
def lifecycleVersion = "2.3.1"
|
|
implementation "androidx.lifecycle:lifecycle-common-java8:$lifecycleVersion"
|
|
implementation "androidx.lifecycle:lifecycle-livedata:$lifecycleVersion"
|
|
implementation "androidx.lifecycle:lifecycle-process:$lifecycleVersion"
|
|
implementation "androidx.lifecycle:lifecycle-runtime:$lifecycleVersion"
|
|
implementation "androidx.lifecycle:lifecycle-viewmodel:$lifecycleVersion"
|
|
def pagingVersion = '3.1.0'
|
|
implementation "androidx.paging:paging-runtime:$pagingVersion"
|
|
implementation "androidx.paging:paging-guava:$pagingVersion"
|
|
implementation 'androidx.preference:preference:1.1.1'
|
|
implementation 'androidx.recyclerview:recyclerview:1.2.1'
|
|
def roomVersion = "2.4.2"
|
|
implementation "androidx.room:room-runtime:$roomVersion"
|
|
annotationProcessor "androidx.room:room-compiler:$roomVersion"
|
|
implementation 'androidx.viewpager2:viewpager2:1.1.0-beta01'
|
|
implementation 'androidx.work:work-runtime:2.7.1'
|
|
implementation 'com.google.android.material:material:1.5.0-alpha05'
|
|
|
|
/** ExoPlayer **/
|
|
def exoplayerVersion = "2.10.8"
|
|
implementation "com.google.android.exoplayer:exoplayer-core:$exoplayerVersion"
|
|
implementation "com.google.android.exoplayer:exoplayer-dash:$exoplayerVersion"
|
|
implementation "com.google.android.exoplayer:exoplayer-hls:$exoplayerVersion"
|
|
implementation "com.google.android.exoplayer:exoplayer-ui:$exoplayerVersion"
|
|
def toroVersion = "3.7.0.2010003"
|
|
implementation "im.ene.toro3:toro:$toroVersion"
|
|
implementation("im.ene.toro3:toro-ext-exoplayer:$toroVersion") {
|
|
exclude module: 'extension-ima'
|
|
}
|
|
|
|
/** Third-party **/
|
|
|
|
/**** Backend logic ****/
|
|
|
|
// HTTP clients
|
|
def retrofitVersion = "2.9.0"
|
|
implementation "com.squareup.retrofit2:retrofit:$retrofitVersion"
|
|
implementation "com.squareup.retrofit2:converter-scalars:$retrofitVersion"
|
|
implementation "com.squareup.retrofit2:adapter-guava:$retrofitVersion"
|
|
implementation 'com.squareup.okhttp3:okhttp:4.9.1'
|
|
|
|
// Dependency injection
|
|
def daggerVersion = '2.40.5'
|
|
implementation "com.google.dagger:dagger:$daggerVersion"
|
|
annotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"
|
|
|
|
// Binding
|
|
// NOTE: Deprecated in favor of viewbinding
|
|
def butterknifeVersion = "10.2.3"
|
|
implementation "com.jakewharton:butterknife:$butterknifeVersion"
|
|
annotationProcessor "com.jakewharton:butterknife-compiler:$butterknifeVersion"
|
|
|
|
// Events
|
|
def eventbusVersion = "3.3.1"
|
|
implementation "org.greenrobot:eventbus:$eventbusVersion"
|
|
annotationProcessor "org.greenrobot:eventbus-annotation-processor:$eventbusVersion"
|
|
|
|
// TransactionTooLargeException avoidance
|
|
implementation 'com.github.livefront:bridge:v2.0.2'
|
|
|
|
// Bundle-saving without boilerplate
|
|
// NOTE: Deprecated
|
|
def stateVersion = "1.4.1"
|
|
implementation "com.evernote:android-state:$stateVersion"
|
|
annotationProcessor "com.evernote:android-state-processor:$stateVersion"
|
|
|
|
// Object to JSON
|
|
// NOTE: Replace with Squareup's Moshi?
|
|
implementation 'com.google.code.gson:gson:2.8.9'
|
|
|
|
// Java library for zip files and streams
|
|
implementation 'net.lingala.zip4j:zip4j:2.9.0'
|
|
|
|
// IO functionality
|
|
implementation 'commons-io:commons-io:2.5'
|
|
|
|
// Crash reporting
|
|
implementation 'com.github.FunkyMuse:Crashy:1.2.0'
|
|
|
|
|
|
/**** User Interface (frontend) ****/
|
|
|
|
//Image loading
|
|
def glideVersion = "4.12.0"
|
|
implementation "com.github.bumptech.glide:glide:$glideVersion"
|
|
annotationProcessor "com.github.bumptech.glide:compiler:$glideVersion"
|
|
implementation 'jp.wasabeef:glide-transformations:4.3.0'
|
|
implementation 'com.github.santalu:aspect-ratio-imageview:1.0.9'
|
|
implementation 'pl.droidsonroids.gif:android-gif-drawable:1.2.23'
|
|
def bivVersion = "1.8.1"
|
|
implementation "com.github.piasy:BigImageViewer:$bivVersion"
|
|
implementation "com.github.piasy:GlideImageLoader:$bivVersion"
|
|
implementation "com.github.piasy:GlideImageViewFactory:$bivVersion"
|
|
|
|
// Markdown
|
|
def markwonVersion = "4.6.2"
|
|
implementation "io.noties.markwon:core:$markwonVersion"
|
|
implementation "io.noties.markwon:ext-strikethrough:$markwonVersion"
|
|
implementation "io.noties.markwon:linkify:$markwonVersion"
|
|
implementation "io.noties.markwon:recycler-table:$markwonVersion"
|
|
implementation "io.noties.markwon:simple-ext:$markwonVersion"
|
|
implementation "io.noties.markwon:html:$markwonVersion"
|
|
implementation "io.noties.markwon:inline-parser:$markwonVersion"
|
|
implementation 'com.atlassian.commonmark:commonmark-ext-gfm-tables:0.14.0'
|
|
implementation 'me.saket:better-link-movement-method:2.2.0'
|
|
|
|
// Animations
|
|
implementation 'com.airbnb.android:lottie:4.2.2'
|
|
|
|
// Loading ProgressBar
|
|
implementation 'com.lsjwzh:materialloadingprogressbar:0.5.8-RELEASE'
|
|
|
|
// Customizable TextView
|
|
implementation 'com.libRG:customtextview:2.4'
|
|
|
|
// Dismiss gesturing
|
|
implementation 'com.r0adkll:slidableactivity:2.1.0'
|
|
implementation 'app.futured.hauler:hauler:5.0.0'
|
|
|
|
// Bottom sheet with rounded corners
|
|
implementation 'com.github.Deishelon:RoundedBottomSheet:1.0.1'
|
|
|
|
// FlowLayout (auto-spacing)
|
|
implementation 'com.nex3z:flow-layout:1.3.3'
|
|
|
|
// RecyclerView fast scrolling
|
|
implementation 'me.zhanghai.android.fastscroll:library:1.1.8'
|
|
|
|
implementation 'com.otaliastudios:zoomlayout:1.9.0'
|
|
|
|
|
|
/**** Builds and flavors ****/
|
|
// debugImplementation because LeakCanary should only run in debug builds.
|
|
//debugImplementation 'com.squareup.leakcanary:leakcanary-android:x.y'
|
|
}
|