From 20ecd9840f1e237dba79674b71e49b43b074902e Mon Sep 17 00:00:00 2001 From: pacien Date: Tue, 8 Dec 2020 16:16:08 +0100 Subject: app: add configuration FTP server This is a ridiculous workaround to make the configuration (and other files) accessible to the user necessary after the new storage access restriction enforced in Android 11 which prevent other applications from accessing the supposedly public application's directory. The app's internal private storage directory is now exposed to the user through an embedded FTP server that the user can turn on and off from the configuration activity. The user can then play with the configuration and retrieve logs through a remote or local FTP client application of their choice. GitHub: closes #103 --- app/build.gradle | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'app/build.gradle') diff --git a/app/build.gradle b/app/build.gradle index 99e9226..41c75ef 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -70,6 +70,14 @@ android { buildFeatures { dataBinding = true } + + packagingOptions { + // clashing in dependencies (Apache Mina FtpServer) + exclude 'META-INF/DEPENDENCIES' + exclude 'META-INF/spring.schemas' + exclude 'META-INF/spring.handlers' + exclude 'META-INF/license.txt' + } } dependencies { @@ -88,6 +96,7 @@ dependencies { implementation('org.apache.commons:commons-configuration2:2.3') { exclude group: 'commons-logging', module: 'commons-logging' } implementation('commons-beanutils:commons-beanutils:1.9.3') { exclude group: 'commons-logging', module: 'commons-logging' } implementation('commons-io:commons-io:2.6') { exclude group: 'commons-logging', module: 'commons-logging' } + implementation('org.apache.ftpserver:ftpserver:1.1.1') { exclude group: 'org.slf4j', module: 'slf4j-log4j12' } } repositories { -- cgit v1.2.3