a4f0fbf8b7
Finally support AndroidX and obfuscation
91 lines
3.0 KiB
Groovy
91 lines
3.0 KiB
Groovy
apply plugin: 'com.android.application'
|
|
|
|
def configProps = new Properties()
|
|
def configPath = project.hasProperty('configPath') ? project.configPath : rootProject.file('config.prop')
|
|
configProps.load(new FileInputStream(configPath))
|
|
|
|
android {
|
|
compileSdkVersion rootProject.ext.compileSdkVersion
|
|
buildToolsVersion rootProject.ext.buildToolsVersion
|
|
|
|
defaultConfig {
|
|
applicationId "com.topjohnwu.magisk"
|
|
minSdkVersion 21
|
|
targetSdkVersion rootProject.ext.compileSdkVersion
|
|
}
|
|
|
|
signingConfigs {
|
|
config {
|
|
storeFile rootProject.file('release-key.jks')
|
|
storePassword configProps['keyStorePass']
|
|
keyAlias configProps['keyAlias']
|
|
keyPassword configProps['keyPass']
|
|
}
|
|
}
|
|
|
|
buildTypes {
|
|
debug {
|
|
// If keystore exists, sign the APK with custom signature
|
|
if (signingConfigs.config.storeFile.exists())
|
|
signingConfig signingConfigs.config
|
|
}
|
|
release {
|
|
minifyEnabled true
|
|
shrinkResources true
|
|
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
|
|
signingConfig signingConfigs.config
|
|
}
|
|
}
|
|
|
|
flavorDimensions "mode"
|
|
|
|
productFlavors {
|
|
full {
|
|
versionName configProps['appVersion']
|
|
versionCode configProps['appVersionCode'] as Integer
|
|
javaCompileOptions {
|
|
annotationProcessorOptions {
|
|
argument('butterknife.debuggable', 'false')
|
|
}
|
|
}
|
|
}
|
|
stub {
|
|
versionCode 1
|
|
versionName "stub"
|
|
}
|
|
}
|
|
|
|
compileOptions {
|
|
sourceCompatibility JavaVersion.VERSION_1_8
|
|
targetCompatibility JavaVersion.VERSION_1_8
|
|
}
|
|
dexOptions {
|
|
preDexLibraries true
|
|
javaMaxHeapSize "2g"
|
|
}
|
|
lintOptions {
|
|
disable 'MissingTranslation'
|
|
}
|
|
}
|
|
|
|
dependencies {
|
|
implementation fileTree(include: ['*.jar'], dir: 'libs')
|
|
fullImplementation project(':utils')
|
|
implementation "androidx.core:core:${rootProject.ext.androidXVersion}"
|
|
fullImplementation "androidx.preference:preference:${rootProject.ext.androidXVersion}"
|
|
fullImplementation "androidx.recyclerview:recyclerview:${rootProject.ext.androidXVersion}"
|
|
fullImplementation "androidx.cardview:cardview:${rootProject.ext.androidXVersion}"
|
|
fullImplementation "com.google.android.material:material:${rootProject.ext.androidXVersion}"
|
|
fullImplementation 'com.github.topjohnwu:libsu:2.0.2'
|
|
fullImplementation 'com.atlassian.commonmark:commonmark:0.11.0'
|
|
fullImplementation 'org.kamranzafar:jtar:2.3'
|
|
|
|
def butterKnifeVersion = '9.0.0-rc1'
|
|
if (properties.containsKey('android.injected.invoked.from.ide')) {
|
|
fullImplementation "com.jakewharton:butterknife-reflect:${butterKnifeVersion}"
|
|
} else {
|
|
fullImplementation "com.jakewharton:butterknife-runtime:${butterKnifeVersion}"
|
|
fullAnnotationProcessor "com.jakewharton:butterknife-compiler:${butterKnifeVersion}"
|
|
}
|
|
}
|