لكن لمن يعمل على اندرويد ستيديو ويريد حماية تطبيقاته فهناك أداة تقوم بتشفير التطبيق بعد تحويله إلى apk وهذا ضروري قبل رفعه على بلاي ستور إذا كان تطبيق حساس يحتوي على بعض الكودات أو الرموز التي لا يجب الوصول إليها .
الأداة هي Proguard وتوجد على برنامج android studio في ملف Gradl .
تفعيل ProGuard :
توجه إلى ملف build.gradle وقم بتغير minifyEnabled إلى true
android { ... buildTypes { release { minifyEnabled true proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro' } } }
الكود
minifyEnabled true
يكون false أنت حولها إلى true
التعديل على ملف Proguard Rules
ProGuard سيقوم بحذف اي كلاس او كود غير مستخدم, لذلك في بعض الاحيان
قد يحذف كلاسات مستخدمه في تطبيقك مماينتج عنه Bugs او Force Close ,
ولتجنب هذا الامر فاننا نقوم باضافة بعض الاسطر والتي تسمى قواعد (Rules)
للـ ProGuard تجبره على عدم حذف الاكواد وابقائها, هذه القواعد تكتب
جميعاً في ملف
proguard-rules.pro
-keep public class * extends android.content.BroadcastReceiver
-keep public class * extends android.content.ContentProvider
-keep public class * extends android.view.View {
public <init>(android.content.Context);
public void set*(...);
}
-keepclasseswithmembers class * {
public <init>(android.content.Context, android.util.AttributeSet);
}
كما ترى في الاسطر السابقة فإننا استخدمنا بعض الرموز مثل keep , keepclasswithmembers
وغيرها, كل رمز منها يستخدم لامرمعين فعلى سبيل المثال keep
تستخدم لابقاء كلاس معين وابقاء جميع مايتضمنه الكلاس من متغيرات وميثود واي امور اخرى, بينما keepclassmembers
تستخدم لابقاء بعض خصائص الكلاس مثل متغير او ميثود معينه.
قد تواجه مشاكل عند عمل كومبايل ل apk وتظهر اخطاء
ما عليك الا مراعات الخطأ جيدا والروابط المفقودة
فمثلا قد يحتاج الى pecasso الخاص بجلب الصور من الانترنت
تذهب الى جوجل وضع الملف بهذه الطريقة
pecasso proguard android studio
وستطلع لك عدة حلول
والب الحلول تكون في ملف proguard-rules.pro مثل هذا الكود لحل مشكلة خطأ pecasso
تعليقات
إرسال تعليق