تنظیمات proguard
سلام
من در برنامم ی کلاس
public interface Constants
دارم میخواهم متغییر های این کلاس قابل خواندن نباشن چه کدی رو باید به proguard اضافه کنم؟
سلام
شما کافیه این قسمت رو true کنید
minifyEnabled true
برنامه خودش به طور خودکار کلاساتون رو غیر قابل خوندن میکنه.اکثر کدهایی که داخل پروگارد ازش استفاده میشه به منظور جلوگیری از غیر قابل خوانده شدن کدها هستش.
کد هایی که میتونید داخل پروگارد استفاده کنید :
-keep: به پروگارد میگوییم که این کلاسها را نگه دارد و نام آنها و بسته آنها را تغییر ندهد. اگر بخواهیم همه کلاسهای داخل یک پکیج را استثنا کنیم از * و اگر بخواهیم همه کلاسهای داخل این پکیج و همه کلاسهای داخل پکیجهای داخلی آن را استثنا کنیم از ** استفاده میکنیم.
-dontwarn: اگر ارجاعاتی به/در کلاس یا کلاسهای مشخص شده وجود دارد که پروگارد آنها را به هر دلیل پیدا نمیکند، هشدار ندهد و آنها را نادیده بگیرد.
-ignorewarnings: عملکرد آن شبیه dontwarn است با یک تفاوت: در لاگ خروجی این ارجاع نامشخص را مینویسد اما به کار خود ادامه میدهد.
-keepattributes: ویژگیهایی که اینجا اعلام کردهایم را نگه میدارد و آنها را حذف نمیکند.
-dontnote: پروگارد بعد از اجرا فایلی را در اختیار ما میگذارد که در آن تمام تغییراتی را که در پکیجها، کلاسها و ویژگیها آنها داده است، در آن میآورد. اگر بخواهیم که خطاهای بالقوه در یک یا چند کلاس خاص را در آن فایل ننویسد از این تنظیم استفاده میکنیم.
*منبع این اپشن ها سایت اسمارت لب هست
خیلی ممنون که جواب دادید ولی مشکل من اینه وقتی
minifyEnabled true
میکنم بهم خروجی نمیده وقتیم کد زیر رو به فایل پروگارد اضافه میکنم محتوا های کلاس تبدیل نمیشن و با اپ ادیتور قابل تغییر هستن
-ignorewarnings
-keep class * {
public private *;
}
پاسخگویی و مشاهده پاسخ های این سوال تنها برای اعضای ویژه سایت امکان پذیر است .
چنانچه تمایل دارید به همه بخش ها دسترسی داشته باشید میتوانید از این بخش لایسنس این آموزش را خریداری نمایید .