Before publishing your Compose Multiplatform app to the Play Store, don't forget to add this and a proper proguard-rules․pro to your build.gradle.kts
Before publishing your Compose Multiplatform app to the Play Store, don't forget to add this and a proper proguard-rules․pro to your build.gradle.kts
Прячем код по-настоящему: тёмные уголки обфускации R8 и ProGuard
Обфускация R8 ProGuard по умолчанию делает ставку на размер, а не на защиту кода. В статье — нестандартные словари, генерация уникальной обфускации на каждую сборку и методы, которые точно усложнят жизнь реверс-инженерам. Подробности
https://habr.com/ru/articles/909638/
#android #proguard #r8 #безопасность #реверсинжиниринг #реверсинженеринг #kotlin #java #обфускация #андройд
I just published a new blog about a weird Proguard / R8 issue I debugged a few weeks ago. Hope you like it.
https://medium.com/justeattakeaway-tech/you-put-it-where-da445b0e1b90
any #proguard rules experts out there who could try to spot what could might have caused this gson-related ClassCastException?
i just disabled proguard altogether to publish a non-broken production version to the play store, but this isn't really ideal either…
It seems like the state-of-the-art for Kotlin for Android with proguard/r8 is ...
DON'T?
(Or use @keep liberally)
@Keep seems like a maintenance nightmare (CI has to build with proguard turned on, and even then w/reflection, which seems unavoidable in kotlin/android, you won't find problems until you run code..)
If you don't use keep then you have to understand the internals of Kotlin (companion objects, enum classes, etc) and how it maps to java classes?
#ProGuard 20th Anniversary: 20 years of #Java shrinking and optimization
Dedicated website with timeline
https://www.guardsquare.com/proguard-20th-anniversary