آخر المواضيع

16 مايو 2018

حماية التطبيق من الريكسن في اندرويد ستوديو


السلام عليكم ورحمة الله تعالى وبركاته
هناك أداة تقوم بتشفير التطبيق بعد تحويله الى apk وهذا ضروري قبل رفعه على بلاي ستور اذا كان تطبيق حساس .
الأداة هي  Proguard
توجد على اندرويد ستيديو في ملف 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

-dontwarn com.squareup.okhttp.** 

مرجع:
https://alhazmy13.net/proguard 
رسالة أحدث رسالة أقدم الصفحة الرئيسية
جميع الحقوق محفوظة © 2017 اسال دوت كوم