buildscript { repositories { maven { url "https://repo1.maven.org/maven2" } } dependencies { classpath 'com.android.tools.build:gradle:0.14.2' classpath files('libs/gradle-witness.jar') } } apply plugin: 'com.android.application' apply from: 'strip_play_services.gradle' apply plugin: 'witness' repositories { maven { url "https://repo1.maven.org/maven2" } maven { url "https://raw.github.com/whispersystems/maven/master/preferencefragment/releases/" } maven { url "https://raw.github.com/whispersystems/maven/master/gson/releases/" } maven { url "https://raw.github.com/whispersystems/maven/master/smil/releases/" } } dependencies { compile 'se.emilsjolander:stickylistheaders:2.2.0' compile 'com.google.android.gms:play-services:6.1.71' compile 'com.astuetz:pagerslidingtabstrip:1.0.1' compile 'org.w3c:smil:1.0.0' compile 'org.apache.httpcomponents:httpclient-android:4.3.5' compile 'com.github.chrisbanes.photoview:library:1.2.3' compile 'com.android.support:appcompat-v7:20.0.0' compile 'com.madgag.spongycastle:prov:1.51.0.0' compile 'com.google.zxing:android-integration:3.1.0' compile ('com.android.support:support-v4-preferencefragment:1.0.0@aar'){ exclude module: 'support-v4' } compile 'com.squareup.dagger:dagger:1.2.2' provided 'com.squareup.dagger:dagger-compiler:1.2.2' compile 'org.whispersystems:jobmanager:0.9.0' compile 'org.whispersystems:libpastelog:1.0.2' androidTestCompile 'com.squareup:fest-android:1.0.8' androidTestCompile 'com.google.dexmaker:dexmaker:1.1' androidTestCompile 'com.google.dexmaker:dexmaker-mockito:1.1' compile project(':libtextsecure') } dependencyVerification { verify = [ 'se.emilsjolander:stickylistheaders:89146b46c96fea0e40200474a2625cda10fe94891e4128f53cdb42375091b9b6', 'com.google.android.gms:play-services:32e7d1834a1cf8fa4b17e8d359db580c286e26c1eefbf84fdb9996eac8d74919', 'com.astuetz:pagerslidingtabstrip:f1641396732c7132a7abb837e482e5ee2b0ebb8d10813fc52bbaec2c15c184c2', 'org.w3c:smil:085dc40f2bb249651578bfa07499fd08b16ad0886dbe2c4078586a408da62f9b', 'org.apache.httpcomponents:httpclient-android:6f56466a9bd0d42934b90bfbfe9977a8b654c058bf44a12bdc2877c4e1f033f1', 'com.github.chrisbanes.photoview:library:8b5344e206f125e7ba9d684008f36c4992d03853c57e5814125f88496126e3cc', 'com.android.support:appcompat-v7:736f576ab0b68d27bdf18b1e7931566e6d8254b73965175313e87f8866b91547', 'com.madgag.spongycastle:prov:b8c3fec3a59aac1aa04ccf4dad7179351e54ef7672f53f508151b614c131398a', 'com.google.zxing:android-integration:89e56aadf1164bd71e57949163c53abf90af368b51669c0d4a47a163335f95c4', 'com.android.support:support-v4-preferencefragment:5470f5872514a6226fa1fc6f4e000991f38805691c534cf0bd2778911fc773ad', 'com.squareup.dagger:dagger:789aca24537022e49f91fc6444078d9de8f1dd99e1bfb090f18491b186967883', 'com.android.support:support-v4:81f2b1c2c94efd5a4ec7fcd97b6cdcd00e87a933905c5c86103c7319eb024572', 'com.madgag.spongycastle:core:8d6240b974b0aca4d3da9c7dd44d42339d8a374358aca5fc98e50a995764511f', 'javax.inject:javax.inject:91c77044a50c481636c32d916fd89c9118a72195390452c81065080f957de7ff', 'org.whispersystems:libpastelog:9798b3c93a91082c2c68542ce5b5c182e18556aebdcb7c8cebbd89eb48ac4047', 'com.google.protobuf:protobuf-java:e0c1c64575c005601725e7c6a02cebf9e1285e888f756b2a1d73ffa8d725cc74', 'com.googlecode.libphonenumber:libphonenumber:eba17eae81dd622ea89a00a3a8c025b2f25d342e0d9644c5b62e16f15687c3ab', 'org.whispersystems:gson:08f4f7498455d1539c9233e5aac18e9b1805815ef29221572996508eb512fe51', 'org.whispersystems:jobmanager:adb4329b69035053a7b6a48e22a3280235ac405b225ed8679b994612a8e6f5b6', 'com.android.support:support-annotations:1aa96ef0cc4a445bfc2f93ccf762305bc57fa107b12afe9d11f3863ae8a11036', ] } android { compileSdkVersion 21 buildToolsVersion '21.1.1' defaultConfig { minSdkVersion 9 targetSdkVersion 19 } compileOptions { sourceCompatibility JavaVersion.VERSION_1_7 targetCompatibility JavaVersion.VERSION_1_7 } android { buildTypes { debug { minifyEnabled false } release { minifyEnabled false } } sourceSets { main { manifest.srcFile 'AndroidManifest.xml' java.srcDirs = ['src'] resources.srcDirs = ['src'] aidl.srcDirs = ['src'] renderscript.srcDirs = ['src'] res.srcDirs = ['res'] assets.srcDirs = ['assets'] } androidTest { java.srcDirs = ['androidTest/java'] resources.srcDirs = ['androidTest/java'] aidl.srcDirs = ['androidTest/java'] renderscript.srcDirs = ['androidTest/java'] } } } signingConfigs { release } buildTypes { release { signingConfig signingConfigs.release } } lintOptions { abortOnError false } } tasks.whenTaskAdded { task -> if (task.name.equals("lint")) { task.enabled = false } } def Properties props = new Properties() def propFile = new File('signing.properties') if (propFile.canRead()){ props.load(new FileInputStream(propFile)) if (props !=null && props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') && props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) { android.signingConfigs.release.storeFile = file(props['STORE_FILE']) android.signingConfigs.release.storePassword = props['STORE_PASSWORD'] android.signingConfigs.release.keyAlias = props['KEY_ALIAS'] android.signingConfigs.release.keyPassword = props['KEY_PASSWORD'] } else { println 'signing.properties found but some entries are missing' android.buildTypes.release.signingConfig = null } }else { println 'signing.properties not found' android.buildTypes.release.signingConfig = null }