我做过我的应用程序,想要缩小Android和Java代码吗? 它可以保存apk文件大小并提高性能吗?与unminify源代码比较。
答案 0 :(得分:23)
在您的构建类型中启用shrinkResources。请注意,它需要启用minify。 在您的Gradle文件中:
android {
buildTypes {
release {
minifyEnabled true
shrinkResources true
}
}
}
接受的答案现在已经过时了,所以如果其他人偶然发现这个问题,我会补充这个答案。
答案 1 :(得分:7)
您可以使用ProGuard。但请注意,当涉及到崩溃报告等时,您的代码将被混淆,因此您需要保持混淆映射以便能够检索版本之间的堆栈跟踪等。 但它确实可以为你的.APK逆向工程提供更好的保护。
更多信息@ Android开发者: http://developer.android.com/tools/help/proguard.html
答案 2 :(得分:3)
只需启用ProGuard,它就可以缩小和混淆您的应用程序。它包含在Android开发人员工具中。
答案 3 :(得分:3)
有三个部分
如果您要删除未使用的编码部分,则可以使用 shrinkResources true
如果您不想使用dmp.txt
,mapping.txt
,seeds.txt
,usage.txt
等默认文件,则应使用 useProguard false
强>
如果您想缩小代码和资源,则必须使用 minifyEnabled true
了解更多详情refer this link
答案 4 :(得分:1)
Minification在非脚本语言中毫无意义。您可以做的是使用ProGuard即删除未使用的代码部分,但由于Android应用程序中的主要部分通常是资源(drawables),请确保您没有太多,或者太大。< / p>
答案 5 :(得分:0)
这对我有用,我禁用即时运行
Console: Clear when page navigates
在proguard-rules.pro
buildTypes {
release {
minifyEnabled true
zipAlignEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}
答案 6 :(得分:0)
如果您不想优化代码,请使用
proguard-android.txt
个配置文件,而不是proguard-android-optimize.txt
。如果要优化代码,请注意优化存在一定的风险,例如并非所有优化都可以在dalvik VM的所有版本上正常运行。
buildTypes {
release {
minifyEnabled true
shrinkResources true
proguardFiles getDefaultProguardFile('proguard-android-optimize.txt'), 'proguard-rules.pro'
}
}