如何在Android Studio中使用ProGuard?

Fel*_*ier 96 android proguard android-studio

这是我在Android Studio中的第一个项目,我的应用程序代码没有混淆.我在build.gradle文件中使用此配置: 在此输入图像描述

我正在使用Build> Generate Signed APK ...检查Run Proguard.而且,当我使用Apk_OneClick.v4.2进行测试时,我的代码完全易于理解:

在此输入图像描述

请帮我.:(

Sco*_*rta 71

您可能实际上并未通过签名向导签署APK的发布版本.您可以使用以下命令从命令行构建发布APK:

./gradlew assembleRelease
Run Code Online (Sandbox Code Playgroud)

或者您可以从Build Variants视图中选择发布变并从GUI构建它:

IDE主窗口显示Build Variants


pyu*_*s13 50

您可以为proguard实现配置build.gradle文件.它可以是模块级别或项目级别.

 buildTypes {

    debug {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'

    }

}
Run Code Online (Sandbox Code Playgroud)

显示的配置是针对调试级别的,但您可以在buildTypes中编写自己的构建样式,如下所示:

    myproductionbuild{
        minifyEnabled true
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
    }
Run Code Online (Sandbox Code Playgroud)

最好将调试与minifyEnabled false生产构建和其他构建一样minifyEnabled true.

将您的proguard-rules.txt文件复制到模块或项目文件夹的根目录中

$YOUR_PROJECT_DIR\YoutProject\yourmodule\proguard-rules.txt

您可以根据需要更改文件的名称.配置完成后,使用三个可用选项之一根据buildType生成构建

  1. 转到右侧面板中的gradle任务,然后搜索assembleRelease/assemble(#your_defined_buildtype)模块下的任务

  2. 转到左侧面板中的Build Variant,然后从下拉列表中选择构建

  3. 转到文件资源管理器中的项目根目录,然后打开cmd/terminal并运行

Linux的 ./gradlew assembleRelease or assemble(#your_defined_buildtype)

视窗 gradlew assembleRelease or assemble(#your_defined_buildtype)

你可以在你的module/build目录中找到apk.

有关配置和proguard文件位置的更多信息,请参见链接

http://tools.android.com/tech-docs/new-build-system/user-guide#TOC-Running-ProGuard


Vil*_*usK 40

注意:现在而不是

runProguard false
Run Code Online (Sandbox Code Playgroud)

你需要使用

minifyEnabled false
Run Code Online (Sandbox Code Playgroud)

  • 猜它应该设置为true (4认同)