build.gradle

  1// Top-level build file where you can add configuration options common to all
  2// sub-projects/modules.
  3buildscript {
  4	repositories {
  5		jcenter()
  6		mavenCentral()
  7	}
  8	dependencies {
  9		classpath 'com.android.tools.build:gradle:1.2.3'
 10	}
 11}
 12
 13allprojects {
 14	repositories {
 15		jcenter()
 16		mavenCentral()
 17	}
 18}
 19
 20apply plugin: 'com.android.application'
 21
 22repositories {
 23	jcenter()
 24	mavenCentral()
 25}
 26
 27dependencies {
 28	compile project(':libs:openpgp-api-lib')
 29	compile project(':libs:MemorizingTrustManager')
 30	compile 'com.android.support:support-v13:21.0.3'
 31	compile 'org.bouncycastle:bcprov-jdk15on:1.51'
 32	compile 'org.jitsi:org.otr4j:0.22'
 33	compile 'org.gnu.inet:libidn:1.15'
 34	compile 'com.google.zxing:core:3.1.0'
 35	compile 'com.google.zxing:android-integration:3.1.0'
 36	compile 'de.measite.minidns:minidns:0.1.3'
 37	compile 'de.timroes.android:EnhancedListView:0.3.4'
 38	compile 'me.leolin:ShortcutBadger:1.1.3@aar'
 39	compile 'com.kyleduo.switchbutton:library:1.2.8'
 40	compile 'org.whispersystems:axolotl-android:1.3.4'
 41	compile 'com.makeramen:roundedimageview:2.1.1'
 42}
 43
 44android {
 45	compileSdkVersion 22
 46	buildToolsVersion "22.0.1"
 47
 48	defaultConfig {
 49		minSdkVersion 14
 50		targetSdkVersion 21
 51		versionCode 87
 52		versionName "1.6.3"
 53	}
 54
 55	compileOptions {
 56		sourceCompatibility JavaVersion.VERSION_1_7
 57		targetCompatibility JavaVersion.VERSION_1_7
 58	}
 59
 60	//
 61	// To sign release builds, create the file `gradle.properties` in
 62	// $HOME/.gradle or in your project directory with this content:
 63	//
 64	// mStoreFile=/path/to/key.store
 65	// mStorePassword=xxx
 66	// mKeyAlias=alias
 67	// mKeyPassword=xxx
 68	//
 69	if (project.hasProperty('mStoreFile') &&
 70			project.hasProperty('mStorePassword') &&
 71			project.hasProperty('mKeyAlias') &&
 72			project.hasProperty('mKeyPassword')) {
 73		signingConfigs {
 74			release {
 75				storeFile file(mStoreFile)
 76					storePassword mStorePassword
 77					keyAlias mKeyAlias
 78					keyPassword mKeyPassword
 79			}
 80		}
 81		buildTypes.release.signingConfig = signingConfigs.release
 82	} else {
 83		buildTypes.release.signingConfig = null
 84	}
 85
 86	applicationVariants.all { variant ->
 87		if (variant.name.equals('release')) {
 88			variant.outputs.each { output ->
 89				if (output.zipAlign != null) {
 90					output.zipAlign.outputFile = new File(output.outputFile.parent, rootProject.name + "-${variant.versionName}.apk")
 91				}
 92				output.packageApplication.outputFile = new File(output.outputFile.parent, output.packageApplication.outputFile.name
 93					.replace(".apk", "-${variant.versionName}.apk"))
 94			}
 95		}
 96	}
 97
 98	lintOptions {
 99		disable 'ExtraTranslation', 'MissingTranslation', 'InvalidPackage', 'MissingQuantity', 'AppCompatResource'
100	}
101
102	subprojects {
103
104		afterEvaluate {
105			if (getPlugins().hasPlugin('android') ||
106					getPlugins().hasPlugin('android-library')) {
107
108				configure(android.lintOptions) {
109					disable 'AndroidGradlePluginVersion', 'MissingTranslation'
110				}
111			}
112
113		}
114	}
115}