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.1@aar'
 39	compile 'com.kyleduo.switchbutton:library:1.2.8'
 40	compile 'org.whispersystems:axolotl-android:1.3.4'
 41}
 42
 43android {
 44	compileSdkVersion 22
 45	buildToolsVersion "22.0.1"
 46
 47	defaultConfig {
 48		minSdkVersion 14
 49		targetSdkVersion 21
 50		versionCode 78
 51		versionName "1.5.0"
 52	}
 53
 54	compileOptions {
 55		sourceCompatibility JavaVersion.VERSION_1_7
 56		targetCompatibility JavaVersion.VERSION_1_7
 57	}
 58
 59	//
 60	// To sign release builds, create the file `gradle.properties` in
 61	// $HOME/.gradle or in your project directory with this content:
 62	//
 63	// mStoreFile=/path/to/key.store
 64	// mStorePassword=xxx
 65	// mKeyAlias=alias
 66	// mKeyPassword=xxx
 67	//
 68	if (project.hasProperty('mStoreFile') &&
 69			project.hasProperty('mStorePassword') &&
 70			project.hasProperty('mKeyAlias') &&
 71			project.hasProperty('mKeyPassword')) {
 72		signingConfigs {
 73			release {
 74				storeFile file(mStoreFile)
 75					storePassword mStorePassword
 76					keyAlias mKeyAlias
 77					keyPassword mKeyPassword
 78			}
 79		}
 80		buildTypes.release.signingConfig = signingConfigs.release
 81	} else {
 82		buildTypes.release.signingConfig = null
 83	}
 84
 85	applicationVariants.all { variant ->
 86		if (variant.name.equals('release')) {
 87			variant.outputs.each { output ->
 88				if (output.zipAlign != null) {
 89					output.zipAlign.outputFile = new File(output.outputFile.parent, rootProject.name + "-${variant.versionName}.apk")
 90				}
 91				output.packageApplication.outputFile = new File(output.outputFile.parent, output.packageApplication.outputFile.name
 92					.replace(".apk", "-${variant.versionName}.apk"))
 93			}
 94		}
 95	}
 96
 97	lintOptions {
 98		disable 'ExtraTranslation', 'MissingTranslation', 'InvalidPackage', 'MissingQuantity', 'AppCompatResource'
 99	}
100
101	subprojects {
102
103		afterEvaluate {
104			if (getPlugins().hasPlugin('android') ||
105					getPlugins().hasPlugin('android-library')) {
106
107				configure(android.lintOptions) {
108					disable 'AndroidGradlePluginVersion', 'MissingTranslation'
109				}
110			}
111
112		}
113	}
114}