diff --git a/Android/.idea/compiler.xml b/Android/.idea/compiler.xml index 659bf43..61a9130 100644 --- a/Android/.idea/compiler.xml +++ b/Android/.idea/compiler.xml @@ -1,6 +1,6 @@ - + \ No newline at end of file diff --git a/Android/.idea/misc.xml b/Android/.idea/misc.xml index 37a7509..d5d35ec 100644 --- a/Android/.idea/misc.xml +++ b/Android/.idea/misc.xml @@ -1,6 +1,6 @@ - + diff --git a/Android/app/build.gradle b/Android/app/build.gradle index ae98caa..5ee600d 100644 --- a/Android/app/build.gradle +++ b/Android/app/build.gradle @@ -1,4 +1,18 @@ -apply plugin: 'com.android.application' +plugins { + id 'com.android.application' + id 'androidx.navigation.safeargs' +} + +Properties properties = new Properties() +def propertiesFile = project.rootProject.file('local.properties') +if (propertiesFile.exists()) { + properties.load(propertiesFile.newDataInputStream()) +} +def appCenterLocalSecret = properties.getProperty('appCenter.localSecret') +def appCenterEnvSecret = System.getenv('APPCENTER_SECRET') +def appCenterSecret = appCenterLocalSecret != null ? appCenterLocalSecret : appCenterEnvSecret != null ? appCenterEnvSecret : "" +def appCenterSdkVersion = '3.3.0' +def nav_version = "2.3.0" android { compileSdkVersion 30 @@ -10,29 +24,67 @@ android { targetSdkVersion 30 versionCode 1 versionName "1.0" + buildConfigField "String", "APPCENTER_SECRET", "\"${appCenterSecret}\"" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" + + javaCompileOptions { + annotationProcessorOptions { + arguments += ["room.schemaLocation": "$projectDir/schemas".toString()] + } + } } buildTypes { release { - minifyEnabled false + // Enables code shrinking, obfuscation, and optimization for only + // your project's release build type. + minifyEnabled true + + // Enables resource shrinking, which is performed by the + // Android Gradle plugin. + shrinkResources true + + // Includes the default ProGuard rules files that are packaged with + // the Android Gradle plugin. To learn more, go to the section about + // R8 configuration files. proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } + compileOptions { + sourceCompatibility JavaVersion.VERSION_1_8 + targetCompatibility JavaVersion.VERSION_1_8 + } } dependencies { + implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}" + implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}" + implementation fileTree(dir: "libs", include: ["*.jar"]) implementation 'androidx.appcompat:appcompat:1.2.0' - implementation 'com.google.android.material:material:1.2.0' + implementation 'com.google.android.material:material:1.3.0' implementation 'androidx.constraintlayout:constraintlayout:2.0.1' - implementation 'androidx.navigation:navigation-fragment:2.3.0' - implementation 'androidx.navigation:navigation-ui:2.3.0' + implementation "androidx.navigation:navigation-fragment:$nav_version" + implementation "androidx.navigation:navigation-ui:$nav_version" implementation 'androidx.lifecycle:lifecycle-extensions:2.2.0' implementation 'com.atlassian.commonmark:commonmark:0.15.2' testImplementation 'junit:junit:4.12' androidTestImplementation 'androidx.test.ext:junit:1.1.2' androidTestImplementation 'androidx.test.espresso:espresso-core:3.3.0' + def room_version = "2.3.0-rc01" + def rxjava_version = "3.0.0" + + implementation "io.reactivex.rxjava3:rxjava:$rxjava_version" + implementation "io.reactivex.rxjava3:rxandroid:$rxjava_version" + implementation "androidx.room:room-runtime:$room_version" + annotationProcessor "androidx.room:room-compiler:$room_version" + + // optional - RxJava3 support for Room + implementation "androidx.room:room-rxjava3:$room_version" + + // optional - Test helpers + //testImplementation "androidx.room:room-testing:$room_version" + } \ No newline at end of file diff --git a/Android/build.gradle b/Android/build.gradle index ff5deb3..aa51d56 100644 --- a/Android/build.gradle +++ b/Android/build.gradle @@ -19,6 +19,8 @@ allprojects { repositories { google() jcenter() + // maven { url "https://oss.jfrog.org/libs-snapshot" } + // maven { url 'http://repo1.maven.org/maven2' } } }