2016-03-23 17 views
1

Şimdi Proguard'ı okuyorum ama ünlem işareti ile karıştırıldım! Aşağıdaki gibi sınıfyolundan önce:Sınıf yolundan önceki ünlem işareti ProGuard'da ne yapar?

-keep sınıfı! android.support.v7.view.menu. {*;} ** bu12 "ne" nedir? yap? Bu, proguard'ın bu sınıfı tutmayacağı anlamına mı geliyor? ama eğer öyleyse proguard bütün sınıfları gizleyeceğinden, neden buna ihtiyacımız var?

+0

http://proguard.sourceforge.net/manual/usage.html#keepoptions –

cevap

2

Aynı şey anlamına geliyor! diğer birçok programlama dilinde anlamına gelir. Aşağıdaki seçimi reddeder. Örneğinizde, aşağıdaki yönerge/sınıf seçiminde değil olan her şey için geçerli tutma yönergesi geçerli olacaktır.

+0

Teşekkürler Doug, bu yüzden yapılandırma dosyamda herhangi bir sakınca yoksa, tüm sınıfları gizlemek anlamına gelecek mi? – Qing

+0

ProGuard, olabildiğince fazla gizlemeye çalışacaktır, evet. Ancak, projenizde en azından varsayılan Android kurallarına sahip olmalısınız, aksi halde gizleme sonrasında çalışmayacaksınız. –

+0

teşekkürler ahbap, senin için son bir soru, bu kurallar dizisine sahibim 1.-sınıfı koru! Android.support.v7.view.menu. ** {*;} ve bu pakette MenuBuilder sınıfını şaşırtacak ama Bu satırın # -keep arayüzünü ekledikten sonra android.support.v7. ** {*; }, MenuBuilder sınıfı gizlenmez, ancak burada bir çakışma görmüyorum. Biraz daha fazla açıklar mısınız? Teşekkür ederim – Qing

İlgili konular