In my buildType
I see this:
buildTypes { release { minifyEnabled false proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } }
I have some questions:
The getDefaultProguardFile('proguard-android.txt') will retrieve the ProGuard settings that are stored in the Android SDK in tools/proguard. The proguard-rules.pro is a file that is located at the root of the module. The purpose is to allow you to add custom rules (ProGuard) that are specific to the module.
ProGuard is a tool to help minify, obfuscate, and optimize your code. It is not only especially useful for reducing the overall size of your Android application as well as removing unused classes and methods that contribute towards the intrinsic 64k method limit of Android applications.
The
getDefaultProguardFile('proguard-android.txt')
method obtains the default ProGuard settings from the Android SDKtools/proguard/
folder. Theproguard-android-optimize.txt
file is also available in this Android SDK folder with the same rules but with optimizations enabled. ProGuard optimizations perform analysis at the bytecode level, inside and across methods to help make your app smaller and run faster. Android Studio adds theproguard-rules.pro
file at the root of the module, so you can also easily add custom ProGuard rules specific to the current module.
Please refer this: https://developer.android.com/studio/build/shrink-code
Meaning that you should add your custom proguard file into proguard-rules.pro
,if you want to separate some rules to many files,you can do it and declare them after this:
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With