Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
101 changes: 51 additions & 50 deletions app/build.gradle
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
apply plugin: 'com.android.application'
apply plugin: 'kotlin-android'
apply plugin: 'org.jetbrains.kotlin.android'
apply plugin: "com.android.application"
apply plugin: "kotlin-android"
apply plugin: "org.jetbrains.kotlin.android"

android {
compileOptions {
Expand All @@ -12,40 +12,40 @@ android {
}

compileSdk 34
// buildToolsVersion '34.0.0'
defaultConfig {
applicationId "net.opendasharchive.openarchive"
minSdkVersion 29
//noinspection OldTargetApi
targetSdkVersion 34
versionCode 30001
versionName '0.7.4'
versionName "0.7.4"
archivesBaseName = "Save-$versionName"
multiDexEnabled true
vectorDrawables.useSupportLibrary = true
testInstrumentationRunner 'androidx.test.runner.AndroidJUnitRunner'
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
}

flavorDimensions += "free"
buildTypes {
release {
minifyEnabled false
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
proguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"
}
}
packagingOptions {
resources {
excludes += ['META-INF/LICENSE.txt', 'META-INF/NOTICE.txt', 'META-INF/LICENSE', 'META-INF/NOTICE', 'META-INF/DEPENDENCIES', 'LICENSE.txt']
excludes += ["META-INF/LICENSE.txt", "META-INF/NOTICE.txt", "META-INF/LICENSE", "META-INF/NOTICE", "META-INF/DEPENDENCIES", "LICENSE.txt"]
}
}
productFlavors {
releaseflavor {
dimension "free"
applicationId 'net.opendasharchive.openarchive.release'
applicationId "net.opendasharchive.openarchive.release"
}
}

kotlinOptions {
jvmTarget = '1.8'
jvmTarget = "1.8"
}

buildFeatures {
Expand All @@ -62,7 +62,7 @@ android {
kotlinCompilerExtensionVersion "1.5.13"
}

namespace 'net.opendasharchive.openarchive'
namespace "net.opendasharchive.openarchive"
}

dependencies {
Expand All @@ -72,20 +72,20 @@ dependencies {

// implementation "androidx.core:core-ktx:1.13.1"
implementation "androidx.appcompat:appcompat:1.6.1"
implementation 'androidx.biometric:biometric:1.1.0'
implementation "androidx.biometric:biometric:1.1.0"
implementation "androidx.constraintlayout:constraintlayout:2.1.4"
implementation "androidx.coordinatorlayout:coordinatorlayout:1.2.0"
implementation "androidx.legacy:legacy-support-v4:1.0.0"
implementation "androidx.lifecycle:lifecycle-livedata-ktx:2.7.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0"
implementation 'androidx.preference:preference-ktx:1.2.1'
implementation "androidx.preference:preference-ktx:1.2.1"
implementation "androidx.work:work-runtime:2.9.0"
implementation "androidx.work:work-runtime-ktx:2.9.0"
implementation "androidx.work:work-testing:2.9.0"

implementation "androidx.compose.ui:ui:1.6.7"
implementation "androidx.compose.material3:material3:1.2.1"
implementation 'androidx.compose.foundation:foundation:1.6.7'
implementation "androidx.compose.foundation:foundation:1.6.7"
implementation "androidx.compose.ui:ui-tooling-preview:1.6.7"
implementation "androidx.activity:activity-compose:1.9.0"
implementation "androidx.lifecycle:lifecycle-viewmodel-ktx:2.7.0"
Expand All @@ -110,11 +110,9 @@ dependencies {
annotationProcessor "com.github.bumptech.glide:compiler:4.16.0"
implementation "com.github.derlio:audio-waveform:v1.0.1"
implementation "com.github.esafirm:android-image-picker:3.0.0"
implementation "com.github.stfalcon:frescoimageviewer:0.5.0"
implementation "com.facebook.fresco:fresco:2.6.0"
implementation "com.squareup.picasso:picasso:2.5.2"

implementation "com.amulyakhare:com.amulyakhare.textdrawable:1.0.1"
implementation "com.github.abdularis:circularimageview:1.4"

implementation "org.cleaninsights.sdk:clean-insights-sdk:2.8.0"
Expand All @@ -125,62 +123,65 @@ dependencies {

transitive = false

exclude group: 'org.bitcoinj'
exclude group: 'com.google.protobuf'
exclude group: 'org.slf4j'
exclude group: 'net.jcip'
exclude group: 'commons-cli'
exclude group: 'org.json'
exclude group: 'com.google.guava'
exclude group: 'com.google.guava', module: 'guava-jdk5'
exclude group: 'com.google.code.findbugs', module: 'annotations'
exclude group: "org.bitcoinj"
exclude group: "com.google.protobuf"
exclude group: "org.slf4j"
exclude group: "net.jcip"
exclude group: "commons-cli"
exclude group: "org.json"
exclude group: "com.google.guava"
exclude group: "com.google.guava", module: "guava-jdk5"
exclude group: "com.google.code.findbugs", module: "annotations"
exclude group: "com.squareup.okio", module: "okio"
}

implementation "com.google.guava:guava:31.0.1-jre"
implementation 'com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava'
implementation "com.google.guava:listenablefuture:9999.0-empty-to-avoid-conflict-with-guava"

implementation 'org.bouncycastle:bcpkix-jdk15to18:1.72'
implementation 'org.bouncycastle:bcprov-jdk15to18:1.72'
api 'org.bouncycastle:bcpg-jdk15to18:1.71'
implementation "org.bouncycastle:bcpkix-jdk15to18:1.72"
implementation "org.bouncycastle:bcprov-jdk15to18:1.72"
api "org.bouncycastle:bcpg-jdk15to18:1.71"

implementation "com.tbuonomo:dotsindicator:5.0"
implementation 'com.guolindev.permissionx:permissionx:1.6.4'
implementation "com.guolindev.permissionx:permissionx:1.6.4"

implementation 'com.jakewharton.timber:timber:5.0.1'
implementation "com.jakewharton.timber:timber:5.0.1"

// Google Drive API
implementation 'com.google.android.gms:play-services-auth:21.1.1'
implementation 'com.google.http-client:google-http-client-gson:1.42.1'
implementation 'com.google.api-client:google-api-client-android:1.26.0'
implementation 'com.google.apis:google-api-services-drive:v3-rev136-1.25.0'
implementation "com.google.android.gms:play-services-auth:21.1.1"
implementation "com.google.http-client:google-http-client-gson:1.42.1"
implementation "com.google.api-client:google-api-client-android:1.26.0"
implementation "com.google.apis:google-api-services-drive:v3-rev136-1.25.0"

// Tor
implementation 'info.guardianproject:tor-android:0.4.7.14'
implementation 'info.guardianproject:jtorctl:0.4.5.7'
implementation "info.guardianproject:tor-android:0.4.7.14"
implementation "info.guardianproject:jtorctl:0.4.5.7"

// New Play libraries
implementation 'com.google.android.play:asset-delivery:2.2.2'
implementation 'com.google.android.play:asset-delivery-ktx:2.2.2'
implementation "com.google.android.play:asset-delivery:2.2.2"
implementation "com.google.android.play:asset-delivery-ktx:2.2.2"

implementation 'com.google.android.play:feature-delivery:2.1.0'
implementation 'com.google.android.play:feature-delivery-ktx:2.1.0'
implementation "com.google.android.play:feature-delivery:2.1.0"
implementation "com.google.android.play:feature-delivery-ktx:2.1.0"

implementation 'com.google.android.play:review:2.0.1'
implementation 'com.google.android.play:review-ktx:2.0.1'
implementation "com.google.android.play:review:2.0.1"
implementation "com.google.android.play:review-ktx:2.0.1"

implementation 'com.google.android.play:app-update:2.1.0'
implementation 'com.google.android.play:app-update-ktx:2.1.0'
implementation "com.google.android.play:app-update:2.1.0"
implementation "com.google.android.play:app-update-ktx:2.1.0"

// Tests
testImplementation 'junit:junit:4.13.2'
testImplementation 'org.robolectric:robolectric:4.7.3'
androidTestImplementation 'androidx.test.ext:junit:1.1.5'
androidTestImplementation 'androidx.test:runner:1.5.2'
testImplementation "junit:junit:4.13.2"
testImplementation "org.robolectric:robolectric:4.7.3"
androidTestImplementation "androidx.test.ext:junit:1.1.5"
androidTestImplementation "androidx.test:runner:1.5.2"

// Pretty Logging
implementation "com.orhanobut:logger:2.2.0"
}

configurations {
all*.exclude group: 'com.google.guava', module: 'listenablefuture'
all*.exclude group: "com.google.guava", module: "listenablefuture"
}

/**
Expand Down
14 changes: 8 additions & 6 deletions app/src/main/java/net/opendasharchive/openarchive/SaveApp.kt
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,13 @@ import com.orm.SugarApp
import info.guardianproject.netcipher.proxy.OrbotHelper
import net.opendasharchive.openarchive.core.di.coreModule
import net.opendasharchive.openarchive.core.di.featuresModule
import net.opendasharchive.openarchive.core.logger.AppLogger
import net.opendasharchive.openarchive.util.Prefs
import net.opendasharchive.openarchive.util.Theme
import org.koin.android.ext.koin.androidContext
import org.koin.android.ext.koin.androidLogger
import org.koin.core.context.startKoin
import org.koin.core.logger.Level
import timber.log.Timber


Expand All @@ -25,10 +28,15 @@ class SaveApp : SugarApp() {
super.onCreate()

startKoin {
androidLogger(Level.DEBUG)
androidContext(this@SaveApp)
modules(coreModule, featuresModule)
}

if(BuildConfig.DEBUG) {
AppLogger.init(applicationContext, initDebugger = true)
}

val config = ImagePipelineConfig.newBuilder(this)
.setProgressiveJpegConfig(SimpleProgressiveJpegConfig())
.setResizeAndRotateEnabledForNetwork(true)
Expand All @@ -43,12 +51,6 @@ class SaveApp : SugarApp() {
Theme.set(Prefs.theme)

CleanInsightsManager.init(this)

// enable timber logging library for debug builds
if (BuildConfig.DEBUG){
Timber.plant(Timber.DebugTree())
Timber.tag("SAVE")
}
}

private fun initNetCipher() {
Expand Down
Loading