apply plugin: 'com.android.application' apply plugin: 'kotlin-android' apply plugin: 'kotlin-android-extensions' apply plugin: 'com.jakewharton.butterknife' def AAVersion = '4.5.2' def SupportLibVersion = '28.0.0' configurations.all { resolutionStrategy { force "com.android.support:appcompat-v7:${SupportLibVersion}" force "com.android.support:support-v4:${SupportLibVersion}" } } android { compileSdkVersion versions.compile buildToolsVersion versions.buildTool defaultConfig { applicationId "org.autojs.autojs" minSdkVersion versions.mini targetSdkVersion versions.target versionCode versions.appVersionCode versionName versions.appVersionName testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" multiDexEnabled true } buildTypes { debug { shrinkResources false minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } release { shrinkResources false minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } compileOptions { sourceCompatibility JavaVersion.VERSION_1_8 targetCompatibility JavaVersion.VERSION_1_8 encoding = 'utf-8' } lintOptions { abortOnError false disable 'MissingTranslation' disable 'ExtraTranslation' } configurations.all { resolutionStrategy.force 'com.google.code.findbugs:jsr305:3.0.1' } flavorDimensions "channel" splits { // Configures multiple APKs based on ABI. abi { // Enables building multiple APKs per ABI. enable true // By default all ABIs are included, so use reset() and include to specify that we only // want APKs for x86 and x86_64. // Resets the list of ABIs that Gradle should create APKs for to none. reset() // Specifies a list of ABIs that Gradle should create APKs for. include "x86", "armeabi-v7a" // Specifies that we do not want to also generate a universal APK that includes all ABIs. universalApk false } } productFlavors { common { buildConfigField "String", "CHANNEL", '"common"' } coolapk { buildConfigField "String", "CHANNEL", '"coolapk"' } } } repositories { flatDir { dirs 'libs' } google() } dependencies { androidTestImplementation('androidx.test.espresso:espresso-core:3.1.1-alpha01', { exclude group: 'com.android.support', module: 'support-annotations' }) testImplementation 'junit:junit:4.12' // Kotlin implementation "org.jetbrains.kotlinx:kotlinx-coroutines-android:1.0.1" // Android Annotations annotationProcessor "org.androidannotations:androidannotations:$AAVersion" implementation "org.androidannotations:androidannotations-api:$AAVersion" // ButterKnife implementation('com.jakewharton:butterknife:9.0.0-rc2', { exclude group: 'com.android.support' }) annotationProcessor 'com.jakewharton:butterknife-compiler:9.0.0-rc2' // Android supports implementation 'androidx.appcompat:appcompat:1.0.2' implementation 'androidx.cardview:cardview:1.0.0' implementation 'com.google.android.material:material:1.1.0-alpha01' implementation 'androidx.multidex:multidex:2.0.0' // Personal libraries implementation 'com.github.hyb1996:MutableTheme:1.0.0' // Material Dialogs implementation('com.afollestad.material-dialogs:core:0.9.2.3', { exclude group: 'com.android.support' }) // Common Markdown implementation 'com.github.atlassian:commonmark-java:commonmark-parent-0.9.0' // Android issue reporter (a github issue reporter) implementation('com.heinrichreimersoftware:android-issue-reporter:1.3.1', { exclude group: 'com.afollestad.material-dialogs' exclude group: 'com.android.support' }) //MultiLevelListView implementation 'com.github.hyb1996:android-multi-level-listview:1.1' //Licenses Dialog implementation 'de.psdev.licensesdialog:licensesdialog:1.8.1' //Expandable RecyclerView implementation 'com.bignerdranch.android:expandablerecyclerview:3.0.0-RC1' //FlexibleDivider implementation 'com.yqritc:recyclerview-flexibledivider:1.4.0' //??? implementation 'com.wang.avi:library:2.1.3' //Commons-lang implementation 'org.apache.commons:commons-lang3:3.6' //Expandable RecyclerView implementation 'com.thoughtbot:expandablerecyclerview:1.3' implementation 'com.github.hyb1996:Auto.js-ApkBuilder:1.0.1' // RxJava implementation "io.reactivex.rxjava2:rxjava:2.1.2" implementation 'io.reactivex.rxjava2:rxandroid:2.0.1' // Retrofit implementation 'com.squareup.retrofit2:retrofit:2.3.0' implementation 'com.squareup.retrofit2:converter-gson:2.3.0' implementation 'com.squareup.retrofit2:converter-gson:2.3.0' implementation 'com.jakewharton.retrofit:retrofit2-rxjava2-adapter:1.0.0' implementation 'com.jakewharton.retrofit:retrofit2-kotlin-coroutines-adapter:0.9.2' //Glide implementation('com.github.bumptech.glide:glide:4.8.0', { exclude group: 'com.android.support' }) kapt 'com.github.bumptech.glide:compiler:4.8.0' //joda time implementation 'joda-time:joda-time:2.9.9' // Tasker Plugin implementation 'com.twofortyfouram:android-plugin-client-sdk-for-locale:4.0.3' // Flurry implementation 'com.flurry.android:analytics:7.0.0@aar' // Bugly implementation 'com.tencent.bugly:crashreport:2.6.6' // MaterialDialogCommon implementation('com.afollestad.material-dialogs:commons:0.9.2.3', { exclude group: 'com.android.support' }) // Android job implementation 'com.evernote:android-job:1.2.6' debugImplementation 'com.squareup.leakcanary:leakcanary-android:1.6.1' releaseImplementation 'com.squareup.leakcanary:leakcanary-android-no-op:1.6.1' // Optional, if you use support library fragments: debugImplementation 'com.squareup.leakcanary:leakcanary-support-fragment:1.6.1' implementation project(':automator') implementation project(':common') implementation project(':autojs') }