apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'jacoco' android { namespace "com.timesafari.dailynotification" compileSdkVersion 33 buildToolsVersion "33.0.2" defaultConfig { applicationId "com.timesafari.dailynotification" minSdkVersion 22 targetSdkVersion 33 versionCode 1 versionName "1.0" testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" aaptOptions { // Files and dirs to omit from the packaged assets dir, modified to accommodate modern web apps. // Default: https://android.googlesource.com/platform/frameworks/base/+/282e181b58cf72b6ca770dc7ca5f91f135444502/tools/aapt/AaptAssets.cpp#61 ignoreAssetsPattern '!.svn:!.git:!.ds_store:!*.scc:.*:!CVS:!thumbs.db:!picasa.ini:!*~' } } buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro' } } lintOptions { abortOnError false } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 } testOptions { unitTests.all { useJUnitPlatform() } } } repositories { google() mavenCentral() maven { url "${project.rootDir}/capacitor-cordova-android-plugins/src/main/libs" } maven { url "${project.rootDir}/libs" } } dependencies { implementation fileTree(include: ['*.jar'], dir: 'libs') implementation project(':capacitor-android') implementation project(':capacitor-cordova-android-plugins') // Android SDK implementation 'com.android.support:support-v4:28.0.0' implementation 'com.android.support:appcompat-v7:28.0.0' implementation 'com.android.support:design:28.0.0' // AndroidX Core implementation 'androidx.core:core:1.9.0' implementation 'androidx.core:core-ktx:1.12.0' // AndroidX AppCompat implementation 'androidx.appcompat:appcompat:1.6.1' // AndroidX Test testImplementation 'androidx.test:core:1.5.0' testImplementation 'androidx.test:runner:1.5.2' testImplementation 'androidx.test.ext:junit:1.1.5' testImplementation 'androidx.test.espresso:espresso-core:3.5.1' testImplementation 'androidx.test:rules:1.5.0' testImplementation 'androidx.test:core-ktx:1.5.0' // JUnit testImplementation 'junit:junit:4.13.2' testImplementation 'org.junit.jupiter:junit-jupiter-api:5.9.2' testImplementation 'org.junit.jupiter:junit-jupiter-engine:5.9.2' // Mockito testImplementation 'org.mockito:mockito-core:4.5.1' testImplementation 'org.mockito:mockito-inline:4.5.1' // AndroidX WorkManager implementation 'androidx.work:work-runtime:2.8.1' // AndroidX Room (for local storage) implementation 'androidx.room:room-runtime:2.6.1' annotationProcessor 'androidx.room:room-compiler:2.6.1' // AndroidX Lifecycle implementation 'androidx.lifecycle:lifecycle-runtime:2.7.0' implementation 'androidx.lifecycle:lifecycle-common-java8:2.7.0' // AndroidX Security implementation 'androidx.security:security-crypto:1.1.0-alpha06' // AndroidX Notification implementation 'androidx.media:media:1.7.0' // AndroidX Broadcast implementation 'androidx.localbroadcastmanager:localbroadcastmanager:1.1.0' // Capacitor dependencies implementation 'com.getcapacitor:capacitor:5.0.0' implementation 'com.getcapacitor:capacitor-android:5.0.0' // Testing dependencies androidTestImplementation 'androidx.test.ext:junit:1.1.5' androidTestImplementation 'androidx.test.espresso:espresso-core:3.5.1' androidTestImplementation 'androidx.test:runner:1.5.2' androidTestImplementation 'androidx.test:rules:1.5.0' androidTestImplementation 'org.mockito:mockito-android:4.5.1' } apply from: 'capacitor.build.gradle' try { def servicesJSON = file('google-services.json') if (servicesJSON.text) { apply plugin: 'com.google.gms.google-services' } } catch(Exception e) { logger.warn("google-services.json not found, google-services plugin not applied. Push Notifications won't work") }