1
0
mirror of https://github.com/TwidereProject/Twidere-Android synced 2024-12-15 10:14:48 +01:00
Twidere-App-Android-Twitter.../twidere/build.gradle

240 lines
10 KiB
Groovy
Raw Normal View History

2015-05-04 17:53:52 +02:00
import fr.avianey.androidsvgdrawable.gradle.SvgDrawableTask
2014-07-03 07:48:39 +02:00
apply plugin: 'com.android.application'
2016-06-29 15:47:52 +02:00
apply plugin: 'kotlin-android'
2017-01-09 06:16:23 +01:00
apply plugin: 'kotlin-kapt'
2016-06-29 15:47:52 +02:00
apply plugin: 'kotlin-android-extensions'
2015-11-21 08:26:10 +01:00
apply plugin: 'androidsvgdrawable'
2014-07-03 07:48:39 +02:00
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2016-05-12 03:37:56 +02:00
apply plugin: 'io.fabric'
2017-03-15 10:14:02 +01:00
apply plugin: 'com.github.triplet.play'
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2016-05-12 03:37:56 +02:00
2016-01-07 05:17:03 +01:00
buildscript {
repositories {
2016-06-29 15:47:52 +02:00
jcenter()
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2016-01-07 05:17:03 +01:00
maven { url 'https://maven.fabric.io/public' }
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2016-01-07 05:17:03 +01:00
}
dependencies {
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2017-03-15 10:14:02 +01:00
classpath "io.fabric.tools:gradle:${libVersions['FabricPlugin']}"
classpath "com.github.triplet.gradle:play-publisher:${libVersions['PlayPublisher']}"
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2016-06-29 15:47:52 +02:00
2017-03-04 06:02:41 +01:00
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:${libVersions['Kotlin']}"
classpath "org.jetbrains.kotlin:kotlin-android-extensions:${libVersions['Kotlin']}"
2016-01-07 05:17:03 +01:00
}
}
2014-07-03 07:48:39 +02:00
android {
defaultConfig {
applicationId "org.mariotaku.twidere"
2017-03-18 07:20:57 +01:00
minSdkVersion project.properties['overrideMinSdkVersion'] ?: 14
2016-10-23 14:51:08 +02:00
targetSdkVersion 25
2017-03-28 15:53:47 +02:00
versionCode 310
versionName '3.4.48'
multiDexEnabled true
2015-11-25 01:47:30 +01:00
2016-12-09 11:53:10 +01:00
buildConfigField 'boolean', 'LEAK_CANARY_ENABLED', 'Boolean.parseBoolean("true")'
2016-03-04 04:54:27 +01:00
buildConfigField 'boolean', 'SHOW_CUSTOM_TOKEN_DIALOG', 'Boolean.parseBoolean("false")'
2016-12-16 16:21:50 +01:00
buildConfigField 'boolean', 'HOTMOBI_LOG_ENABLED', 'Boolean.parseBoolean("false")'
2016-01-01 11:57:18 +01:00
2016-01-29 05:13:38 +01:00
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
2014-07-03 07:48:39 +02:00
}
2016-03-05 16:16:17 +01:00
aaptOptions {
additionalParameters "--no-version-vectors"
}
productFlavors {
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2016-01-07 05:17:03 +01:00
google {}
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2016-01-07 05:17:03 +01:00
fdroid {}
}
buildTypes {
debug {
2017-02-15 18:03:48 +01:00
minifyEnabled false
shrinkResources false
2015-12-29 13:25:16 +01:00
resValue("bool", "debug", "true")
}
2015-03-29 09:36:51 +02:00
release {
2015-11-22 15:55:29 +01:00
minifyEnabled false
shrinkResources false
2015-11-22 15:55:29 +01:00
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
2015-12-29 13:25:16 +01:00
resValue("bool", "debug", "false")
2015-03-29 09:36:51 +02:00
}
}
2016-07-06 15:21:34 +02:00
sourceSets.each {
it.res.srcDirs += project.files("src/${it.name}/res-localized")
it.res.srcDirs += project.files("src/${it.name}/res-svg2png")
it.java.srcDirs += "src/${it.name}/kotlin"
2015-03-29 13:06:55 +02:00
}
testOptions {
unitTests.returnDefaultValues = true
}
2016-04-04 11:22:36 +02:00
2014-07-03 07:48:39 +02:00
}
repositories {
2016-06-29 15:47:52 +02:00
mavenLocal()
maven { url 'https://s3.amazonaws.com/repo.commonsware.com' }
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2015-12-29 08:26:52 +01:00
maven { url 'https://maven.fabric.io/public' }
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2015-12-20 12:54:05 +01:00
flatDir { dirs "$projectDir/lib" }
}
2014-07-03 07:48:39 +02:00
dependencies {
// wearApp project(':twidere.wear')
2017-03-04 06:02:41 +01:00
kapt "com.bluelinelabs:logansquare-compiler:${libVersions['LoganSquare']}"
2016-06-29 15:47:52 +02:00
kapt 'com.hannesdorfmann.parcelableplease:processor:1.0.2'
2016-12-15 13:15:58 +01:00
kapt 'com.google.dagger:dagger-compiler:2.8'
2017-03-05 10:04:26 +01:00
kapt "com.github.mariotaku.ObjectCursor:processor:${libVersions['ObjectCursor']}"
2016-02-13 08:26:23 +01:00
compile project(':twidere.component.common')
compile project(':twidere.component.nyan')
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2017-03-04 06:02:41 +01:00
googleCompile "com.google.android.gms:play-services-maps:${libVersions['PlayServices']}"
googleCompile "com.google.android.gms:play-services-auth:${libVersions['PlayServices']}"
googleCompile "com.google.maps.android:android-maps-utils:${libVersions['MapsUtils']}"
googleCompile("com.crashlytics.sdk.android:crashlytics:${libVersions['Crashlyrics']}@aar") {
2017-01-21 17:33:20 +01:00
transitive = true
}
2017-03-04 06:02:41 +01:00
googleCompile "com.anjlab.android.iab.v3:library:${libVersions['IABv3']}"
googleCompile "com.dropbox.core:dropbox-core-sdk:${libVersions['DropboxCoreSdk']}"
googleCompile("com.google.apis:google-api-services-drive:${libVersions['GoogleDriveApi']}") {
2017-01-21 17:33:20 +01:00
exclude group: 'org.apache.httpcomponents'
}
2016-05-13 09:23:03 +02:00
// END Non-FOSS component
2017-03-15 14:18:56 +01:00
fdroidCompile "org.osmdroid:osmdroid-android:${libVersions['OSMDroid']}"
debugCompile "com.facebook.stetho:stetho:${libVersions['Stetho']}"
debugCompile "com.facebook.stetho:stetho-okhttp3:${libVersions['Stetho']}"
debugCompile "com.facebook.stetho:stetho-js-rhino:${libVersions['Stetho']}"
2017-03-15 14:18:56 +01:00
debugCompile "com.squareup.leakcanary:leakcanary-android:${libVersions['LeakCanary']}"
debugCompile('com.jayway.jsonpath:json-path:2.2.0') {
exclude group: 'net.minidev', module: 'json-smart'
}
provided 'javax.annotation:jsr250-api:1.0'
testCompile 'junit:junit:4.12'
2017-03-04 06:02:41 +01:00
androidTestCompile "com.android.support:support-annotations:${libVersions['SupportLib']}"
androidTestCompile 'com.android.support.test:runner:0.5'
androidTestCompile 'com.android.support.test:rules:0.5'
compile 'com.android.support:multidex:1.0.1'
2017-03-04 06:02:41 +01:00
compile "com.android.support:support-v4:${libVersions['SupportLib']}"
compile "com.android.support:appcompat-v7:${libVersions['SupportLib']}"
compile "com.android.support:cardview-v7:${libVersions['SupportLib']}"
compile "com.android.support:recyclerview-v7:${libVersions['SupportLib']}"
compile "com.android.support:preference-v7:${libVersions['SupportLib']}"
compile "com.android.support:preference-v14:${libVersions['SupportLib']}"
compile "com.android.support:customtabs:${libVersions['SupportLib']}"
compile "com.android.support:design:${libVersions['SupportLib']}"
compile "com.android.support:percent:${libVersions['SupportLib']}"
2017-03-15 14:18:56 +01:00
compile "com.twitter:twitter-text:${libVersions['TwitterText']}"
compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.6.0'
2015-08-16 11:34:49 +02:00
compile 'com.squareup:otto:1.3.8'
2017-03-03 19:19:08 +01:00
compile 'dnsjava:dnsjava:2.1.8'
2016-12-15 13:15:58 +01:00
compile 'com.commonsware.cwac:layouts:0.4.3'
2015-07-17 16:30:41 +02:00
compile 'com.rengwuxian.materialedittext:library:2.1.4'
2015-10-05 12:00:07 +02:00
compile 'com.pnikosis:materialish-progress:1.7'
2016-09-09 07:08:13 +02:00
compile 'com.github.mariotaku:MessageBubbleView:1.6'
compile 'com.github.mariotaku:DragSortListView:0.6.1'
compile 'com.github.uucky:ColorPicker-Android:0.9.7@aar'
2017-03-03 19:19:08 +01:00
compile 'pl.droidsonroids.gif:android-gif-drawable:1.2.3'
compile 'com.sprylab.android.texturevideoview:texturevideoview:1.2.1'
2015-10-05 12:00:07 +02:00
compile 'com.squareup:pollexor:2.0.4'
compile 'org.apache.commons:commons-lang3:3.5'
2015-10-05 13:09:54 +02:00
compile 'commons-primitives:commons-primitives:1.0'
2017-03-04 06:02:41 +01:00
compile "org.apache.james:apache-mime4j-core:${libVersions['Mime4J']}"
compile "org.apache.james:apache-mime4j-storage:${libVersions['Mime4J']}"
compile "com.bluelinelabs:logansquare:${libVersions['LoganSquare']}"
2015-10-05 12:00:07 +02:00
compile 'com.soundcloud.android:android-crop:1.0.1@aar'
2016-01-04 04:32:48 +01:00
compile 'com.hannesdorfmann.parcelableplease:annotation:1.0.2'
compile "com.github.mariotaku:PickNCrop:${libVersions['PickNCrop']}"
2017-03-04 06:02:41 +01:00
compile "com.github.mariotaku.RestFu:library:${libVersions['RestFu']}"
compile "com.github.mariotaku.RestFu:okhttp3:${libVersions['RestFu']}"
2017-03-03 19:19:08 +01:00
compile 'com.squareup.okhttp3:okhttp:3.6.0'
2015-09-02 09:03:17 +02:00
compile 'com.lnikkila:extendedtouchview:0.1.0'
2016-12-15 13:15:58 +01:00
compile 'com.google.dagger:dagger:2.8'
2017-03-03 19:19:08 +01:00
compile 'org.attoparser:attoparser:2.0.3.RELEASE'
compile 'com.getkeepsafe.taptargetview:taptargetview:1.8.0'
2017-01-23 06:27:29 +01:00
compile 'net.ypresto.androidtranscoder:android-transcoder:0.2.0'
2017-03-04 06:02:41 +01:00
compile "com.google.android.exoplayer:exoplayer:${libVersions['Exoplayer']}"
compile "com.google.android.exoplayer:extension-okhttp:${libVersions['Exoplayer']}"
2017-03-01 15:12:25 +01:00
compile 'com.github.bumptech.glide:glide:3.7.0'
compile 'com.github.bumptech.glide:okhttp3-integration:1.4.0@aar'
2017-03-02 02:08:54 +01:00
compile 'jp.wasabeef:glide-transformations:2.0.1'
2017-03-15 14:18:56 +01:00
compile "com.github.mariotaku.MediaViewerLibrary:base:${libVersions['MediaViewerLibrary']}"
compile "com.github.mariotaku.MediaViewerLibrary:subsample-image-view:${libVersions['MediaViewerLibrary']}"
2017-03-13 06:35:11 +01:00
compile 'com.github.mariotaku:SQLiteQB:0.9.12'
2017-03-04 06:02:41 +01:00
compile "com.github.mariotaku.ObjectCursor:core:${libVersions['ObjectCursor']}"
compile "com.github.mariotaku:MultiValueSwitch:${libVersions['MultiValueSwitch']}"
2016-07-06 03:18:12 +02:00
compile 'com.github.mariotaku:AbstractTask:0.9.4'
2017-03-04 06:02:41 +01:00
compile "com.github.mariotaku.CommonsLibrary:parcel:${libVersions['MariotakuCommons']}"
compile "com.github.mariotaku.CommonsLibrary:io:${libVersions['MariotakuCommons']}"
compile "com.github.mariotaku.CommonsLibrary:text:${libVersions['MariotakuCommons']}"
compile "com.github.mariotaku.CommonsLibrary:text-kotlin:${libVersions['MariotakuCommons']}"
2016-12-17 05:10:24 +01:00
compile 'com.github.mariotaku:KPreferences:0.9.5'
2017-03-06 09:36:25 +01:00
compile 'com.github.mariotaku:Chameleon:0.9.16'
2017-03-04 06:02:41 +01:00
compile "org.jetbrains.kotlin:kotlin-stdlib:${libVersions['Kotlin']}"
compile 'nl.komponents.kovenant:kovenant:3.3.0'
compile 'nl.komponents.kovenant:kovenant-android:3.3.0'
compile 'nl.komponents.kovenant:kovenant-functional:3.3.0'
2016-12-02 05:36:50 +01:00
compile 'nl.komponents.kovenant:kovenant-combine:3.3.0'
2015-05-04 17:53:52 +02:00
}
2015-06-24 17:13:03 +02:00
task svgToDrawable(type: SvgDrawableTask) {
2015-05-04 17:53:52 +02:00
// specify where to pick SVG from
2017-03-27 05:08:09 +02:00
from = files(android.sourceSets.collect { "src/${it.name}/svg/drawable" })
2015-05-04 17:53:52 +02:00
// specify the android res folder
to = file('src/main/res-svg2png')
// override files only if necessary
2015-11-30 06:32:05 +01:00
overwriteMode = 'ifModified'
2015-05-04 17:53:52 +02:00
// let generate PNG for the following densities only
targetedDensities = ['hdpi', 'mdpi', 'xhdpi', 'xxhdpi', 'xxxhdpi']
// relative path of the file specifying nine patch specs
2015-06-24 17:13:03 +02:00
ninePatchConfig = file('src/main/svg/drawable/9patch.json')
2015-05-04 17:53:52 +02:00
// output format of the generated resources
outputFormat = 'PNG'
2015-06-24 17:13:03 +02:00
outputType = 'drawable'
2016-01-03 11:24:10 +01:00
}
task svgToMipmap(type: SvgDrawableTask) {
// specify where to pick SVG from
2017-03-27 05:08:09 +02:00
from = files(android.sourceSets.collect { "src/${it.name}/svg/mipmap" })
2016-01-03 11:24:10 +01:00
// specify the android res folder
to = file('src/main/res-svg2png')
// override files only if necessary
overwriteMode = 'ifModified'
// let generate PNG for the following densities only
targetedDensities = ['hdpi', 'mdpi', 'xhdpi', 'xxhdpi', 'xxxhdpi']
// output format of the generated resources
outputFormat = 'PNG'
outputType = 'mipmap'
2016-04-03 14:30:31 +02:00
}
2016-05-12 03:37:56 +02:00
2017-03-15 10:14:02 +01:00
// START Non-FOSS component
play {
jsonFile = rootProject.file('private/google_play_publish.json')
track = 'beta'
}
// END Non-FOSS component
2016-05-13 09:23:03 +02:00
// START Non-FOSS component
2016-05-12 03:37:56 +02:00
apply plugin: 'com.google.gms.google-services'
2016-05-13 09:23:03 +02:00
// END Non-FOSS component