jadi source code yang bisa dibaca manusia Read another’s code Find vulnerabilities in the code Search for sensitive data hardcoded in the code Malware Analysis Modifying the functionality of an existing application tujuan kali ini hanya untuk education (karena decompile bisa menjadi hal yang ilegal bila digunakan untuk membuat app tiruan, mencuri algoritma dll)
Android Build Gradle > 3.4.0 use R8 Code shrinking Why u should proguard or r8 : removes unused classes, fields, methods, attributes, library Resource shrinking removes unused resources Obfuscation shortens the name of classes and members ex : androidx.appcompat.app.ActionBarDrawerToggle.DelegateProvider -> a.a.a.b String nama_ayam = “ayam betutu” -> String z = “ayam betutu” Optimization inspects and rewrites your code
and can be accessed using API keys which we get during the subscription process Masih sering terjadi di negara +62 developer menulis langsung secret key pada appsnya 2.1 Storing keys in the native C/C++ (existing apps) 1. Create folder jni on main menyembunyikan, bukan menghilangkan
sendiri (untuk apps yang harus online) 3. Don’t store raw format ex: saved Coin on SharedPreference Daripada save langsung var coin = 300 mending save 1,208 didapat dari (coin/2+1)/125
yg digunakan ternyata dihapus) gunakan -keep public class MyClass pada file proguard-rules.pro cara melihat code yg terhapus r8 Link 2. Resource Shrinking hanya dapat dilakukan bersama dengan penyusutan kode, jika ingin mempertahankan resource agar tidak dihapus bisa mengakses Link 3.