是什么在Android的consumer-rules.pro和proguard-rules.pro之间的区别?

Sushobh Nadiger:

我在我的主要的应用程序建立在Android中使用一个模块,并似乎有是两个consumer-rules.pro和proguard-rules.pro这些文件。

我想知道的事情folllowing

  1. 将所有的模块代码由主模块亲卫队规则的规则进行模糊处理,即使模块没有指定任何规则?
  2. 是什么在Android的consumer-rules.pro和proguard-rules.pro之间的区别?
  3. 如果我在我的模块中启用minifyEnabled?
  4. 我注意到,我能为我的主模块在模块添加proguard的规则,所以没有该模块的平均proguard的规则是在主模块中重写?

请指教。

Jeel Vankhede:

我会尽量回答每一个问题,即使让我知道,如果事情没有意义!

1. 将所有的模块代码由主模块亲卫队规则的规则进行模糊处理,即使模块没有指定任何规则?

混淆不工作的方式。当您的应用程序模块中能够缩小财产它试图从应用模块,以及它的第三方的依赖与你的库模块将被视为第三方DEPS模糊处理代码。在这里,但它并没有触及你的第三方依赖任何传递依赖


2. 什么是Android中consumer-rules.pro和proguard-rules.pro之间的区别?

proguard-rules.pro是你声明的规则来为你模块和它的依赖关系到ProGuard的文件。

consumer-rules.pro在这里声明,可以从消费你的模块上应用规则的文件(任何人会使用你的模块/库的依赖关系,通常由开发者库使用。)


3. 如果我在我的模块中启用minifyEnabled?

我建议你应该(每个开发必须在发布APK做),但要确保一切工作正常,因为根本classes.dex变化将缩小后。它有助于减少输出的apk大小,优化代码,模糊处理的类文件以及更多...


4. 我注意到,我能为我的主模块在模块添加proguard的规则,所以没有该模块的平均proguard的规则是在主模块中重写?

不,基本上库规则会从应用的消费规则从库模块本身的文件,所以当你宣布在应用模块库中它被应用在同样的方式与规则,消费者的规则基本上是表明涅槃时,消费者应该使用这些规则。

proguard-rules.pro库是你为你的库的第三方的依赖声明规则的地方(这被认为是传递依赖于你的应用程序模块/主模块)及不通过应用程序模块的规则来重写。


我希望这是有道理的!

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

来自分类Dev

proguard-android.txt和proguard-rules.pro有什么区别?-安卓

来自分类Java

proguard-rules.pro文件上的FileNotFoundException

来自分类Dev

proguard-rules.pro中的规则顺序重要吗?

来自分类Dev

在我的Flutter应用中找不到proguard-rules.pro

来自分类Dev

proguard-rules.pro似乎不适用于R8

来自分类Dev

在多个应用程序模块中重复使用proguard-rules.pro文件

来自分类Dev

\ Validator :: make($ input,$ rules)和Validator :: make($ input,$ rules)有什么区别?

来自分类Dev

CSS中的@rules是什么?

来自分类Java

是什么Quarkus和Thorntail之间的区别?

来自分类Java

是什么JNA和JNR之间的区别

来自分类Java

是什么@ComponentScans和@ComponentScan之间的区别?

来自分类Java

是什么@JsonApiRelationId和@JsonApiRelation之间的区别?

来自分类Dev

是什么unsafeDupablePerformIO和accursedUnutterablePerformIO之间的区别?

来自分类Java

是什么CompletionStage'和“CompletableFuture”之间的区别

来自分类Java

JMS中的MessageListener和Consumer之间有什么区别?

来自分类Java

什么是JobIntentService和IntentService之间的区别是什么?

来自分类Java

什么是@Mocked,@Injectable和@Capturing之间的区别是什么?

来自分类Java

Android Studio中菱形和圆形断点之间的区别是什么?

来自分类Java

是什么渠道和链接AMQP之间的区别?

来自分类Dev

“ constinit”和“ constexpr”之间的真正区别是什么?

来自分类Dev

didChangeDependencies和initState之间的区别是什么?

来自分类Java

是什么XMX和maxram的JVM参数之间的区别?

来自分类Java

是什么在Talend tJava和tJavaRow之间的区别?

来自分类Java

ORM和对象映射之间的区别是什么?

来自分类Linux

asyncio和trio之间的核心区别是什么?

来自分类Java

是什么在C ++ NDK“jobject”和“JCLASS”之间的区别

来自分类Java

是什么@RepositoryRestController和@Repository注解之间的区别?

来自分类Java

是什么@RequiredArgsConstructor(onConstructor = @__(@进样))和@RequiredArgsConstructor之间的区别?

来自分类Java

是什么FixedThreadPool和ThreadPoolTaskExecutor类之间的区别?

TOP 榜单

热门标签

归档