Sobes.tech
Junior

ProGuard nedir?

sobes.tech yapay zeka

AI'dan gelen yanıt

ProGuard, Java bayt kodunu küçültmek, optimize etmek ve obfuscate etmek için kullanılan ücretsiz açık kaynaklı bir araçtır. Android Studio'da varsayılan olarak release derleme modunda kullanılır, böylece güvenliği artırır ve APK/App Bundle boyutunu küçültür.

ProGuard'un temel fonksiyonları:

  • Küçültme: Kullanılmayan sınıfları, alanları, metodları ve özellikleri kaldırır.
  • Optimizasyon: Bayt kodunu analiz eder ve optimize eder, daha verimli hale getirir. Örneğin, küçük metodları gömer.
  • Obfuscation: Sınıfları, alanları ve metodları kısa ve anlamsız isimlere (örneğin, a, b, c) yeniden adlandırır, böylece kodun tersine mühendisliği (decompile edilmesi) zorlaşır.
  • Pre-Verification: Bayt koduna bilgi ekler, JVM sınıflarının yüklenmesini hızlandırır.

ProGuard yapılandırması, kurallar dosyaları (örneğin, proguard-rules.pro) aracılığıyla yapılır; burada, dokunulması gerekenleri belirtebilirsiniz (örneğin, Manifest dosyasında kullanılan sınıflar, native metodlar, Parcelable ve Serializable sınıfları). Bu kurallar olmadan, ProGuard uygulamanın düzgün çalışması için gerekli bileşenleri silebilir veya yeniden adlandırabilir.

ProGuard'un sonucu, daha kompakt, daha verimli ve tersine mühendisliğe karşı korumalı bayt kodudur.