|
|
|
apply plugin: 'com.android.application'
|
|
|
|
apply plugin: 'com.getkeepsafe.dexcount'
|
|
|
|
|
|
|
|
android {
|
|
|
|
compileSdkVersion project.targetSdkVersion
|
|
|
|
buildToolsVersion project.buildToolsVersion
|
|
|
|
|
|
|
|
defaultConfig {
|
|
|
|
minSdkVersion project.minSdkVersion
|
|
|
|
targetSdkVersion project.targetSdkVersion
|
|
|
|
applicationId "org.purplei2p.lightning"
|
|
|
|
versionName project.versionName
|
|
|
|
versionCode project.versionCode
|
|
|
|
vectorDrawables.useSupportLibrary = true
|
|
|
|
}
|
|
|
|
|
|
|
|
signingConfigs {
|
|
|
|
r4sas {
|
|
|
|
storeFile file("store.jks")
|
|
|
|
storePassword "storepass"
|
|
|
|
keyAlias "keyalias"
|
|
|
|
keyPassword "keypass"
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
buildTypes {
|
|
|
|
debug {
|
|
|
|
minifyEnabled false
|
|
|
|
shrinkResources false
|
|
|
|
proguardFiles 'proguard-project.txt'
|
|
|
|
}
|
|
|
|
|
|
|
|
release {
|
|
|
|
minifyEnabled true
|
|
|
|
shrinkResources true
|
|
|
|
signingConfig signingConfigs.r4sas
|
|
|
|
proguardFiles 'proguard-project.txt'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
android.applicationVariants.all { variant ->
|
|
|
|
variant.outputs.all { output ->
|
|
|
|
def formattedDate = new Date().format('yyMMdd')
|
|
|
|
|
|
|
|
def outputFile = output.outputFile
|
|
|
|
if (outputFile != null && outputFile.name.endsWith('.apk')) {
|
|
|
|
def fileName = outputFile.name.replace("app", "${defaultConfig.applicationId}_${defaultConfig.versionCode}_${formattedDate}")
|
|
|
|
outputFileName = fileName
|
|
|
|
}
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
lintOptions {
|
|
|
|
abortOnError true
|
|
|
|
}
|
|
|
|
|
|
|
|
packagingOptions {
|
|
|
|
exclude '.readme'
|
|
|
|
}
|
|
|
|
}
|
|
|
|
|
|
|
|
dexcount {
|
|
|
|
includeClasses = false
|
|
|
|
includeFieldCount = false
|
|
|
|
// format = "tree"
|
|
|
|
orderByMethodCount = true
|
|
|
|
verbose = false
|
|
|
|
}
|
|
|
|
|
|
|
|
dependencies {
|
|
|
|
testImplementation 'junit:junit:4.12'
|
|
|
|
|
|
|
|
// support libraries
|
|
|
|
def supportLibVersion = '28.0.0'
|
|
|
|
implementation "com.android.support:palette-v7:$supportLibVersion"
|
|
|
|
implementation "com.android.support:appcompat-v7:$supportLibVersion"
|
|
|
|
implementation "com.android.support:design:$supportLibVersion"
|
|
|
|
implementation "com.android.support:recyclerview-v7:$supportLibVersion"
|
|
|
|
implementation "com.android.support:support-v4:$supportLibVersion"
|
|
|
|
|
|
|
|
// dependency injection
|
|
|
|
def daggerVersion = '2.11'
|
|
|
|
implementation "com.google.dagger:dagger:$daggerVersion"
|
|
|
|
annotationProcessor "com.google.dagger:dagger-compiler:$daggerVersion"
|
|
|
|
compileOnly 'javax.annotation:jsr250-api:1.0'
|
|
|
|
|
|
|
|
// view binding
|
|
|
|
def butterknifeVersion = '8.6.0'
|
|
|
|
implementation "com.jakewharton:butterknife:$butterknifeVersion"
|
|
|
|
annotationProcessor "com.jakewharton:butterknife-compiler:$butterknifeVersion"
|
|
|
|
|
|
|
|
// permissions
|
|
|
|
implementation 'com.anthonycr.grant:permissions:1.1.2'
|
|
|
|
|
|
|
|
// tor proxy
|
|
|
|
def netcipherVersion = '2.0.0-alpha1'
|
|
|
|
implementation "info.guardianproject.netcipher:netcipher:$netcipherVersion"
|
|
|
|
implementation "info.guardianproject.netcipher:netcipher-webkit:$netcipherVersion"
|
|
|
|
|
|
|
|
implementation 'com.anthonycr.bonsai:bonsai:1.1.0'
|
|
|
|
|
|
|
|
implementation 'com.anthonycr.progress:animated-progress:1.0'
|
|
|
|
|
|
|
|
// memory leak analysis
|
|
|
|
def leakCanaryVersion = '1.5.1'
|
|
|
|
debugImplementation "com.squareup.leakcanary:leakcanary-android:$leakCanaryVersion"
|
|
|
|
releaseImplementation "com.squareup.leakcanary:leakcanary-android-no-op:$leakCanaryVersion"
|
|
|
|
}
|