diff --git a/.gitignore b/.gitignore index ba23a7dae..7051e766d 100644 --- a/.gitignore +++ b/.gitignore @@ -7,3 +7,4 @@ /build /captures release.keystore +signing.properties diff --git a/app/build.gradle b/app/build.gradle index 6d98eccf4..7a481c1b3 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,10 +11,16 @@ android { versionCode 1 versionName "1.0" } + + signingConfigs { + release + } + buildTypes { release { - minifyEnabled false + minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' + signingConfig signingConfigs.release } } } @@ -27,3 +33,23 @@ dependencies { compile 'com.github.bumptech.glide:glide:3.7.0' compile 'com.davemorrissey.labs:subsampling-scale-image-view:3.4.1' } + +def Properties props = new Properties() +def propFile = new File('signing.properties') +if (propFile.canRead()) { + props.load(new FileInputStream(propFile)) + + if (props != null && props.containsKey('STORE_FILE') && props.containsKey('STORE_PASSWORD') && + props.containsKey('KEY_ALIAS') && props.containsKey('KEY_PASSWORD')) { + android.signingConfigs.release.storeFile = file(props['STORE_FILE']) + android.signingConfigs.release.storePassword = props['STORE_PASSWORD'] + android.signingConfigs.release.keyAlias = props['KEY_ALIAS'] + android.signingConfigs.release.keyPassword = props['KEY_PASSWORD'] + } else { + println 'signing.properties found but some entries are missing' + android.buildTypes.release.signingConfig = null + } +} else { + println 'signing.properties not found' + android.buildTypes.release.signingConfig = null +} diff --git a/signing.properties_sample b/signing.properties_sample new file mode 100644 index 000000000..acf8fb9fc --- /dev/null +++ b/signing.properties_sample @@ -0,0 +1,4 @@ +STORE_FILE=/path/to/your.keystore +STORE_PASSWORD=yourkeypass +KEY_ALIAS=projectkeyalias +KEY_PASSWORD=yourkeypass