]> gitweb.fperrin.net Git - Dictionary.git/blobdiff - build.gradle
Proper dependencies for task to create small jar file.
[Dictionary.git] / build.gradle
index 7108db198316195d865dffea6e17439c50e28dc9..4feb3e00dbdb83313493a1db2a4064a5110725b7 100644 (file)
@@ -12,14 +12,41 @@ apply plugin: 'com.android.application'
 repositories {
     jcenter()
 }
+configurations {
+    smallicu
+}
 dependencies {
-    compile 'com.android.support:appcompat-v7:21.0.3'
-    compile 'com.ibm.icu:icu4j:55.1'
+    compile 'com.android.support:appcompat-v7:22.2.1'
+    // Note: you can just replace "smallicu" by compile
+    // and remove the "compile files" part if you do not
+    // care about the size of the apk
+    smallicu 'com.ibm.icu:icu4j:55.1'
+    compile files("$buildDir/icu4j-55.1.small.jar") {
+        builtBy 'makesmallicu'
+    }
+}
+
+task makesmallicu (type:Exec, dependsOn: configurations.smallicu) {
+    inputs.file "mksmallicu.sh"
+    inputs.file "${configurations.smallicu.resolve()[0]}"
+    outputs.dir "$buildDir"
+    outputs.file "$buildDir/icu4j-55.1.small.jar"
+    new File("$buildDir").mkdirs()
+    commandLine "./mksmallicu.sh", "${configurations.smallicu.resolve()[0]}", "$buildDir/icu4j-55.1.small.jar"
 }
 
 android {
-    compileSdkVersion 21
-    buildToolsVersion "22.0.1"
+    compileSdkVersion 22
+    buildToolsVersion "23.0.1"
+    buildTypes {
+        debug {
+            applicationIdSuffix ".debug"
+        }
+        release {
+            minifyEnabled true
+            shrinkResources true
+        }
+    }
     sourceSets {
         main {
             manifest.srcFile 'AndroidManifest.xml'