PDA

View Full Version : خطا زمان ساخت فایل apk



Hossein_Kh73
یک شنبه 26 اردیبهشت 1395, 18:05 عصر
سلام من میخوام از proguard برای محافظت از برنامم استفاده کنم

اما زمانی که میخوام فایل apk نهاییشو بسازم این خطا رو میده کسی میدونه چی هست ؟





Error:Execution failed for task ':app:transformClassesAndResourcesWithProguardForR elease'.
> java.io.IOException: Please correct the above warnings first.

loo30fer
یک شنبه 26 اردیبهشت 1395, 18:13 عصر
این رو به gradle اضافه کنید و مجدد تست کنید ببینید مشکلتون حل میشه یا نه

buildTypes { release {
minifyEnabled true
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
} }

Nevercom
یک شنبه 26 اردیبهشت 1395, 20:09 عصر
قبل از این پیام، یه سری هشدار بهتون داده.
این هشدار ها اشاره می کنه که مثلاً از فلان کتابخانه استفاده کردی و وقتی ProGuard عمل می کنه و اسم ها رو تغییر میده، کد به درستی عمل نمی کنه.

معمولاً کتابخانه ها یا اطلاعات موردنیاز برای ProGuard رو بصورت اتوماتیک وارد می کنن یا توضیحاتی ارائه میدن مبنی بر اینکه چه اطلاعاتی باید به ProGuard اضافه بشه.

بعنوان یک قانون کلی اگر از کتابخانه ای استفاده می کنی که View داره یا resource هایی داره که تو XML ازشون استفاده میشه، باید به پروگارد فهموند که اینها رو مثتثنی قرار بده و کاریشون نداشته باشه.

مثلاً برای کتابخانه ی NineOldAndroid این عبارت رو باید به پروگار اضافه کنید:


-dontwarn com.nineoldandroids.**
-keep class com.nineoldandroids.** { *; }

با آزمون و خطا، تک تک کتابخانه ها رو به لیست اضافه کنید تا در نهایت موفق بشد. البته اون Warning هایی که Gradle میده هم میتونه بهتون کمک کنه.