mirror of
https://github.com/subsurface/subsurface.git
synced 2024-12-01 06:30:26 +00:00
aa41fbbf79
Android's sandbox makes us jump through hoops in order to share files with other apps. We need to declare a file provider and use specific paths where the files are located. Then we have java code (I couldn't make it work as JNI) that takes the filenames and creates content:// URIs for them and then hands those off to a sharing activity that is provided by Android. This can then be used to create attachments for support emails, or to share the log files with other apps - both of which will solve the annoying maximum log file length that we have with using the binder to add the log file text to the message body. This also finally replaces the 'compile' directive in build.gradle with 'implementation' - removing a warning that we've had for ages. Signed-off-by: Dirk Hohndel <dirk@hohndel.org>
74 lines
2.1 KiB
Groovy
74 lines
2.1 KiB
Groovy
/*******************************************************
|
|
* SPDX-License-Identifier: GPL-2.0
|
|
* Subsurface-Mobile own Gradle build spec. Derived from
|
|
* the one supplied by Qt.
|
|
*******************************************************/
|
|
buildscript {
|
|
repositories {
|
|
mavenCentral()
|
|
jcenter()
|
|
google()
|
|
}
|
|
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:3.2.1'
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
repositories {
|
|
mavenCentral()
|
|
jcenter()
|
|
maven { url 'https://jitpack.io' }
|
|
google()
|
|
}
|
|
}
|
|
|
|
apply plugin: 'com.android.application'
|
|
|
|
dependencies {
|
|
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
|
implementation 'com.github.mik3y:usb-serial-for-android:v3.4.3'
|
|
implementation 'com.android.support:support-v4:25.3.1'
|
|
}
|
|
|
|
android {
|
|
/*******************************************************
|
|
* The following variables:
|
|
* - androidBuildToolsVersion,
|
|
* - androidCompileSdkVersion
|
|
* - qt5AndroidDir - holds the path to qt android files
|
|
* needed to build any Qt application
|
|
* on Android.
|
|
*
|
|
* are defined in gradle.properties file. This file is
|
|
* updated by QtCreator and androiddeployqt tools.
|
|
* Changing them manually might break the compilation!
|
|
*******************************************************/
|
|
|
|
compileSdkVersion androidCompileSdkVersion.toInteger()
|
|
|
|
buildToolsVersion androidBuildToolsVersion
|
|
|
|
sourceSets {
|
|
main {
|
|
manifest.srcFile 'AndroidManifest.xml'
|
|
java.srcDirs = [qt5AndroidDir + '/src', 'src', 'java']
|
|
aidl.srcDirs = [qt5AndroidDir + '/src', 'src', 'aidl']
|
|
res.srcDirs = [qt5AndroidDir + '/res', 'res']
|
|
resources.srcDirs = ['src']
|
|
renderscript.srcDirs = ['src']
|
|
assets.srcDirs = ['assets']
|
|
jniLibs.srcDirs = ['libs']
|
|
}
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
|
|
lintOptions {
|
|
abortOnError false
|
|
}
|
|
}
|