Android代码混淆配置中的*{ *; } 和 **{*;}的区别
时间: 2024-05-15 07:11:46 浏览: 109
在 Android 的代码混淆配置文件 proguard-rules.pro 中,*{ *; } 和 **{*;} 是两个常用的通配符,它们的区别如下:
1. *{ *; }:表示对任何类都进行代码混淆,包括所有类的所有成员变量和方法。这种配置在混淆时可以减小应用的体积,但是有可能会导致一些类无法正常使用,因为某些类的方法或成员变量没有被保留下来。
2. **{*;}:表示只对类名进行代码混淆,不混淆类的成员变量和方法。这种配置可以保留类的完整结构和功能,但是会增加应用的体积。
因此,如果你需要在代码混淆时保留某些类的完整结构和功能,可以使用 **{*;} 进行配置;如果你希望尽可能地减小应用的体积,可以使用 *{ *; } 进行配置。但是需要注意,这些配置都需要谨慎使用,以免对应用造成意想不到的影响。
相关问题
android代码混淆配置
Android代码混淆是通过一系列的行为来实现的,包括代码压缩、优化和混淆等。具体的配置可以通过修改build.gradle文件来完成。首先,你需要将minifyEnabled属性设置为true来启用混淆功能。接着,你需要配置混淆文件,可以使用默认的proguard-android.txt文件和自定义的proguard-rules.txt文件。在混淆文件中,你可以指定一些规则来保护某些类或方法不被混淆,比如使用"-keep"关键字并指定需要保护的类或方法的规则。例如,如果你想保护一个名为PhoneUtil的类中的构造函数不被混淆,你可以使用"-keep"关键字并指定对应的构造函数的规则,如引用中所示。最后,你需要进行预校验的配置,默认情况下是在Java平台上进行预校验,但在Android平台上不需要这项功能。因此,你可以去掉预校验的配置以加快混淆速度。总结起来,你可以将以下代码添加到你的build.gradle文件中来配置Android代码混淆:
```
android {
// 其他配置...
buildTypes {
release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.txt'
}
}
}
```
这样,你就可以配置好Android代码混淆了。引用内容和提供了更详细的解释和例子供你参考。<span class="em">1</span><span class="em">2</span><span class="em">3</span>
#### 引用[.reference_title]
- *1* [Android 代码混淆配置](https://blog.csdn.net/Mr_chenbj/article/details/87208294)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *2* [Android--混淆配置(比较详细的混淆规则)](https://blog.csdn.net/weixin_42602900/article/details/127671586)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
- *3* [Android开发——常用的代码混淆配置](https://blog.csdn.net/chengxu_kuangrexintu/article/details/80946801)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v92^chatsearchT0_1"}}] [.reference_item style="max-width: 33.333333333333336%"]
[ .reference_list ]
android 中代码混淆,Android中代码混淆
Android中的代码混淆是指通过一系列的转换和优化技术,将代码中的变量名、方法名、类名等信息进行加密和混淆,增加反编译难度和保护源代码的安全性。Android开发中常用的混淆工具是ProGuard。它可以在编译打包的时候对代码进行混淆,去除无用代码,减小APK包的大小,提高应用程序的安全性。同时,ProGuard还可以进行优化,使得应用程序的运行速度更快、占用内存更少。在使用ProGuard进行混淆时,需要配置混淆规则,以确保应用程序在混淆后仍能正常运行。
阅读全文