微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何阻止 R8 混淆 lambdas?

如何解决如何阻止 R8 混淆 lambdas?

我正在使用 R8 对我的应用程序进行 Android 混淆。由于我使用了许多第三方库,因此我制定了一个保留规则,以确保 R8 仅混淆我应用中的代码,而不混淆第三方代码

-keep class !com.mycompany.myapp.**,** { *; }

这在大多数情况下都有效,并且可以阻止类在第三方库中(即不在 com.mycompany.myapp 包或子包中)被混淆。

但是,我看到许多 lambda 类仍然被混淆,还有 -CC 类似乎也与 lambda 相关。以下是我的映射文件中的一些示例:

androidx.browser.trusted.-$$Lambda$TokenContents$EhAh0EiAbuzFn6siY46Fy8sz2WQ -> androidx.browser.trusted.b
androidx.browser.trusted.-$$Lambda$TrustedWebActivityServiceConnectionPool$0rIunx8HODWjNmKa0LJLcrkAQfY -> androidx.browser.trusted.c
androidx.browser.trusted.TrustedWebActivitydisplayMode$-CC -> androidx.browser.trusted.d
com.okta.authn.sdk.client.AuthenticationClient$-CC -> com.okta.authn.sdk.client.a
com.okta.authn.sdk.http.-$$Lambda$BdIqocOq45iaPOuzDtHPQSwrk7Y -> com.okta.authn.sdk.http.a
com.okta.oidc.net.request.-$$Lambda$SprXLQYFZdk2o3Qa6et6rvfaLMs -> com.okta.oidc.net.request.a
com.okta.sdk.ds.RequestBuilder$-CC -> com.okta.sdk.ds.a
com.okta.sdk.impl.config.-$$Lambda$VIPFzo3G1RhKXe9-Dwy0UtIk4bw -> com.okta.sdk.impl.config.e
com.okta.sdk.impl.ds.-$$Lambda$AvgK35xP1fayVo91--EMlKm_E_I -> com.okta.sdk.impl.ds.a
com.okta.sdk.impl.error.-$$Lambda$DefaultError$3NKWPC-D-oR1mx6d73W2_kHiXso -> com.okta.sdk.impl.error.a
com.okta.sdk.impl.resource.-$$Lambda$7yJsh-Y54jU5jeeIJ3nLM9G-VjU -> com.okta.sdk.impl.resource.a
com.okta.sdk.resource.application.ApplicationBuilder$-CC -> com.okta.sdk.resource.application.a
com.okta.sdk.resource.user.createuserRequest$-CC -> com.okta.sdk.resource.user.a
com.okta.sdk.resource.user.UserBuilder$-CC -> com.okta.sdk.resource.user.b
okhttp3.-$$Lambda$Authenticator$xBBU2iHkJpDKH0vhaB2vteUyEoc -> okhttp3.a
okhttp3.-$$Lambda$CipherSuite$9SWcmR6qHxy1V18Yo6Z-Hyn4RNk -> okhttp3.b
okhttp3.-$$Lambda$Dns$mTkNcZf2K4euny3_jks6Cac6Az0 -> okhttp3.c
okhttp3.-$$Lambda$EventListener$ahubxrUJKWnWohQgQKQidD9cuoA -> okhttp3.d
okhttp3.Authenticator$-CC -> okhttp3.e
okhttp3.Dns$-CC -> okhttp3.f
okhttp3.internal.-$$Lambda$TEfSBt3hRUlBSSARfPEHsJesTtE -> okhttp3.internal.a
okhttp3.internal.-$$Lambda$Util$h7t7benxn5wsEKvjxE9svqr_kuY -> okhttp3.internal.b
okhttp3.internal.connection.-$$Lambda$RealConnectionPool$Cy61BJKpsrwSB_hQmB_R9MngVNU -> okhttp3.internal.connection.a
okhttp3.internal.ws.-$$Lambda$RealWebSocket$vImgSP5IPT4ir3b3bHxPQ53ps8k -> okhttp3.internal.ws.a

如何更改我的保留规则以确保此类类不会被混淆?

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。