Reactively updated flag which only checks whether the "data" / "wifi" / "ethernet" is plugged in or enabled. If the user connects to the wifi but has no actual connection, the app will never know. Please refrain from using other access methods (like pinging a host), it can get picked up by a VPN or other methods and possibly expose MM.
117 lines
3.7 KiB
Groovy
117 lines
3.7 KiB
Groovy
apply plugin: 'com.android.application'
|
|
apply plugin: 'kotlin-android'
|
|
apply plugin: 'kotlin-android-extensions'
|
|
apply plugin: 'kotlin-kapt'
|
|
|
|
kapt {
|
|
correctErrorTypes = true
|
|
useBuildCache = true
|
|
mapDiagnosticLocations = true
|
|
javacOptions {
|
|
option("-Xmaxerrs", 1000)
|
|
}
|
|
}
|
|
|
|
android {
|
|
defaultConfig {
|
|
applicationId 'com.topjohnwu.magisk'
|
|
vectorDrawables.useSupportLibrary = true
|
|
multiDexEnabled true
|
|
versionName configProps['appVersion']
|
|
versionCode configProps['appVersionCode'] as Integer
|
|
}
|
|
|
|
buildTypes {
|
|
release {
|
|
minifyEnabled true
|
|
shrinkResources true
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'),
|
|
'proguard-rules.pro', 'proguard-kotlin.pro'
|
|
}
|
|
}
|
|
|
|
dataBinding {
|
|
enabled = true
|
|
}
|
|
|
|
packagingOptions {
|
|
exclude '/META-INF/*.version'
|
|
exclude '/META-INF/*.kotlin_module'
|
|
exclude '/META-INF/rxkotlin.properties'
|
|
exclude '/androidsupportmultidexversion.txt'
|
|
exclude '/org/bouncycastle/**'
|
|
exclude '/kotlin/**'
|
|
exclude '/kotlinx/**'
|
|
}
|
|
|
|
kotlinOptions {
|
|
jvmTarget = '1.8'
|
|
}
|
|
}
|
|
|
|
androidExtensions {
|
|
experimental = true
|
|
}
|
|
|
|
dependencies {
|
|
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
|
implementation project(':shared')
|
|
implementation project(':signing')
|
|
|
|
implementation 'com.github.topjohnwu:jtar:1.0.0'
|
|
implementation 'com.jakewharton.timber:timber:4.7.1'
|
|
implementation 'com.github.skoumalcz:teanity:0.3.3'
|
|
implementation 'com.ncapdevi:frag-nav:3.2.0'
|
|
implementation 'com.github.pwittchen:reactivenetwork-rx2:3.0.3'
|
|
|
|
def vMarkwon = '3.1.0'
|
|
implementation "ru.noties.markwon:core:${vMarkwon}"
|
|
implementation "ru.noties.markwon:html:${vMarkwon}"
|
|
implementation "ru.noties.markwon:image-svg:${vMarkwon}"
|
|
|
|
def vLibsu = '2.5.0'
|
|
implementation "com.github.topjohnwu.libsu:core:${vLibsu}"
|
|
implementation "com.github.topjohnwu.libsu:io:${vLibsu}"
|
|
|
|
def vKoin = "2.0.1"
|
|
implementation "org.koin:koin-core:${vKoin}"
|
|
implementation "org.koin:koin-android:${vKoin}"
|
|
implementation "org.koin:koin-androidx-viewmodel:${vKoin}"
|
|
|
|
def vRetrofit = '2.6.1'
|
|
implementation "com.squareup.retrofit2:retrofit:${vRetrofit}"
|
|
implementation "com.squareup.retrofit2:converter-moshi:${vRetrofit}"
|
|
implementation "com.squareup.retrofit2:converter-scalars:${vRetrofit}"
|
|
implementation "com.squareup.retrofit2:adapter-rxjava2:${vRetrofit}"
|
|
|
|
def vOkHttp = '4.0.1'
|
|
implementation "com.squareup.okhttp3:okhttp:${vOkHttp}"
|
|
implementation "com.squareup.okhttp3:logging-interceptor:${vOkHttp}"
|
|
|
|
def vMoshi = "1.8.0"
|
|
implementation "com.squareup.moshi:moshi:${vMoshi}"
|
|
|
|
def vKotshi = "2.0.1"
|
|
implementation "se.ansman.kotshi:api:${vKotshi}"
|
|
kapt "se.ansman.kotshi:compiler:${vKotshi}"
|
|
|
|
modules {
|
|
module('androidx.room:room-runtime') {
|
|
replacedBy('com.github.topjohnwu:room-runtime')
|
|
}
|
|
}
|
|
def vRoom = "2.1.0"
|
|
implementation "com.github.topjohnwu:room-runtime:${vRoom}"
|
|
kapt "androidx.room:room-compiler:${vRoom}"
|
|
|
|
implementation 'androidx.constraintlayout:constraintlayout:1.1.3'
|
|
implementation 'androidx.browser:browser:1.0.0'
|
|
implementation 'androidx.preference:preference:1.0.0'
|
|
implementation 'androidx.recyclerview:recyclerview:1.1.0-beta01'
|
|
implementation 'androidx.cardview:cardview:1.0.0'
|
|
implementation 'androidx.work:work-runtime:2.1.0'
|
|
implementation 'androidx.transition:transition:1.2.0-beta01'
|
|
implementation 'androidx.multidex:multidex:2.0.1'
|
|
implementation 'com.google.android.material:material:1.1.0-alpha09'
|
|
}
|