mirror of
https://github.com/meshtastic/Meshtastic-Android.git
synced 2026-04-20 22:23:37 +00:00
Uses Hilt to get the database initialization off of the main thread. The initial introduction always has a disproportionate fan-out of boilerplate. In this case, all entry points which were using UIViewModel needed to be annotated in order to let the code gen know that they needed to support it. The PacketRepository is injected into things via the main thread (e.g., the MeshService) but due to the lazy declaration, the database isn't hydrated until the DAO is access while on an IO thread.
65 lines
2.3 KiB
Groovy
65 lines
2.3 KiB
Groovy
// Top-level build file where you can add configuration options common to all sub-projects/modules.
|
|
|
|
buildscript {
|
|
ext.kotlin_version = '1.6.10'
|
|
ext.coroutines_version = "1.5.2"
|
|
ext.hilt_version = '2.40.5'
|
|
|
|
repositories {
|
|
google()
|
|
mavenCentral()
|
|
}
|
|
dependencies {
|
|
classpath 'com.android.tools.build:gradle:7.1.0'
|
|
classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version"
|
|
classpath "org.jetbrains.kotlin:kotlin-serialization:$kotlin_version"
|
|
|
|
// NOTE: Do not place your application dependencies here; they belong
|
|
// in the individual module build.gradle files
|
|
|
|
// Add the Crashlytics Gradle plugin.
|
|
// Check that you have the Google Services Gradle plugin v4.3.2 or later
|
|
// (if not, add it).
|
|
classpath 'com.google.gms:google-services:4.3.10'
|
|
classpath 'com.google.firebase:firebase-crashlytics-gradle:2.8.1'
|
|
|
|
// protobuf plugin - docs here https://github.com/google/protobuf-gradle-plugin
|
|
classpath 'com.google.protobuf:protobuf-gradle-plugin:0.8.17'
|
|
|
|
//classpath "app.brant:amazonappstorepublisher:0.1.0"
|
|
classpath 'com.github.triplet.gradle:play-publisher:2.8.0'
|
|
|
|
// for unit testing https://github.com/bjoernQ/unmock-plugin
|
|
classpath 'com.github.bjoernq:unmockplugin:0.7.9'
|
|
|
|
classpath "com.google.dagger:hilt-android-gradle-plugin:$hilt_version"
|
|
}
|
|
}
|
|
|
|
allprojects {
|
|
repositories {
|
|
maven {
|
|
// Per https://docs.mapbox.com/android/maps/guides/install/ we now need to signin to download mapbox lib
|
|
url 'https://api.mapbox.com/downloads/v2/releases/maven'
|
|
authentication {
|
|
basic(BasicAuthentication)
|
|
}
|
|
credentials {
|
|
// Do not change the username below.
|
|
// This should always be `mapbox` (not your username).
|
|
username = 'mapbox'
|
|
// Use the secret token you stored in gradle.properties as the password
|
|
password = project.properties['MAPBOX_DOWNLOADS_TOKEN'] ?: ""
|
|
}
|
|
}
|
|
google()
|
|
mavenCentral()
|
|
// jcenter()
|
|
maven { url 'https://jitpack.io' }
|
|
//maven { url "https://plugins.gradle.org/m2/" }
|
|
}
|
|
}
|
|
|
|
task clean(type: Delete) {
|
|
delete rootProject.buildDir
|
|
}
|