summaryrefslogtreecommitdiff
path: root/app/build.gradle.kts
diff options
context:
space:
mode:
authorHarsh Shandilya <msfjarvis@gmail.com>2019-03-02 22:35:51 +0530
committerMohamed Zenadi <zeapo@users.noreply.github.com>2019-03-02 18:05:51 +0100
commit3c06063153d0b7f71998128dc6fb4e5967e33624 (patch)
treea2630d83b430ea7a703bbeff016c3bd494bfc91e /app/build.gradle.kts
parent0b6ba542a880a50e04fe04c9960999230629bc9c (diff)
Rewrite Gradle configuration with Kotlin DSL (#488)
Signed-off-by: Harsh Shandilya <msfjarvis@gmail.com>
Diffstat (limited to 'app/build.gradle.kts')
-rw-r--r--app/build.gradle.kts95
1 files changed, 95 insertions, 0 deletions
diff --git a/app/build.gradle.kts b/app/build.gradle.kts
new file mode 100644
index 00000000..ae45304b
--- /dev/null
+++ b/app/build.gradle.kts
@@ -0,0 +1,95 @@
+import org.jetbrains.kotlin.config.KotlinCompilerVersion
+
+plugins {
+ id("com.android.application")
+ id("kotlin-android")
+ id("kotlin-android-extensions")
+ id("eclipse")
+}
+
+val buildTypeRelease = "release"
+android {
+ compileSdkVersion(28)
+
+ defaultConfig {
+ applicationId = "com.zeapo.pwdstore"
+ minSdkVersion(21)
+ targetSdkVersion(28)
+ versionCode = 10302
+ versionName = "1.3.2"
+ testInstrumentationRunner = "androidx.test.runner.AndroidJUnitRunner"
+ }
+
+ buildTypes {
+ getByName("debug") {
+ applicationIdSuffix = ".debug"
+ }
+ }
+
+ compileOptions {
+ setSourceCompatibility(JavaVersion.VERSION_1_8)
+ setTargetCompatibility(JavaVersion.VERSION_1_8)
+ }
+
+ lintOptions {
+ isAbortOnError = true // make sure build fails with lint errors!
+ disable("MissingTranslation", "PluralsCandidate")
+ }
+
+ packagingOptions {
+ exclude(".readme")
+ exclude("META-INF/LICENSE.txt")
+ exclude("META-INF/NOTICE.txt")
+ }
+
+ /*
+ * To sign release builds, create the file `gradle.properties` in
+ * $HOME/.gradle or in your project directory with this content:
+ *
+ * mStoreFile=/path/to/key.store
+ * mStorePassword=xxx
+ * mKeyAlias=alias
+ * mKeyPassword=xxx
+ */
+ if (project.hasProperty("mStoreFile") &&
+ project.hasProperty("mStorePassword") &&
+ project.hasProperty("mKeyAlias") &&
+ project.hasProperty("mKeyPassword")) {
+ signingConfigs {
+ getByName(buildTypeRelease) {
+ storeFile = file(project.properties["mStoreFile"] as String)
+ storePassword = project.properties["mStorePassword"] as String
+ keyAlias = project.properties["mKeyAlias"] as String
+ keyPassword = project.properties["mKeyPassword"] as String
+ }
+ }
+ buildTypes.getByName(buildTypeRelease).signingConfig = signingConfigs.getByName(buildTypeRelease)
+ }
+}
+
+dependencies {
+ implementation("androidx.appcompat:appcompat:1.0.0")
+ implementation("androidx.recyclerview:recyclerview:1.0.0")
+ implementation("androidx.cardview:cardview:1.0.0")
+ implementation("com.google.android.material:material:1.0.0")
+ implementation("androidx.annotation:annotation:1.0.0")
+ implementation("org.sufficientlysecure:openpgp-api:11.0")
+ implementation("com.nononsenseapps:filepicker:2.4.2")
+ implementation("org.eclipse.jgit:org.eclipse.jgit:3.7.1.201504261725-r") {
+ exclude(group = "org.apache.httpcomponents", module = "httpclient")
+ }
+ implementation("com.jcraft:jsch:0.1.54")
+ implementation("commons-io:commons-io:2.5")
+ implementation("commons-codec:commons-codec:1.11")
+ implementation("com.jayway.android.robotium:robotium-solo:5.3.1")
+ implementation(kotlin("stdlib-jdk7", KotlinCompilerVersion.VERSION))
+ implementation("androidx.constraintlayout:constraintlayout:1.1.3")
+
+ // Testing-only dependencies
+ androidTestImplementation("junit:junit:4.12")
+ androidTestImplementation("org.mockito:mockito-core:2.18.0")
+ androidTestImplementation("androidx.test:runner:1.1.0-alpha4")
+ androidTestImplementation("androidx.test:rules:1.1.0-alpha4")
+ androidTestImplementation("androidx.test.espresso:espresso-core:3.1.0-alpha4")
+ androidTestImplementation("androidx.test.espresso:espresso-intents:3.1.0-alpha4")
+}