تصحيح أخطاء حِزم APK المُنشأة مسبقًا

يتيح لك الإصدار Android Studio 3.0 أو الإصدارات الأحدث منه معالجة ملفات APK وتصحيح أخطائها التي تم تفعيل تصحيح الأخطاء فيها بدون الحاجة إلى إنشائها من مشروع على "استوديو Android".

لبدء تصحيح أخطاء APK، اتبع الخطوات التالية:

  1. من شاشة الترحيب في "استوديو Android"، انقر على الملف الشخصي أو تصحيح أخطاء APK.

    إذا كان لديك مشروع مفتوح، انقر على ملف > الملف الشخصي أو تصحيح أخطاء APK من شريط القوائم.

  2. في مربع الحوار الذي يظهر، اختَر حزمة APK التي تريد استيرادها إلى "استوديو Android".

  3. انقر على حسنًا.

يعرض "استوديو Android" بعد ذلك ملفات APK غير المضغوطة، بشكل مشابه للشكل 1. هذه ليست مجموعة ملفات تم فكها بالكامل، ولكنها توفر ملفات SMALI لنسخة أكثر قابلية للقراءة من ملفات DEX.

استيراد حزمة APK تم إنشاؤها مسبقًا إلى "استوديو Android"

الشكل 1. استيراد حزمة APK تم إنشاؤها مسبقًا إلى "استوديو Android"

عرض Android في جزء المشروع يتيح لك فحص المحتويات التالية لملف APK:

  • ملف APK: انقر مرّتين على ملف APK لفتح أداة تحليل APK.
  • البيانات: تحتوي على بيانات التطبيق التي يتم استخراجها من حزمة APK.
  • JavaScript: يحتوي على رمز Kotlin أو رمز Java الذي تفكّكه أداة Android Studio (إلى ملفات SMALI) من ملفات DEX في حزمة APK. يتوافق كل ملف SMALI في هذا الدليل مع فئة Kotlin أو Java.
  • cpp: إذا كان تطبيقك يتضمن رمزًا برمجيًا أصليًا، فإن هذا الدليل يحتوي على مكتبات APK الأصلية (ملفات SO).
  • المكتبات الخارجية: تحتوي على حزمة تطوير البرامج (SDK) لنظام التشغيل Android.

يمكنك استخدام محلّل Android لبدء اختبار أداء تطبيقك.

لتصحيح أخطاء رمز Kotlin أو Java لتطبيقك، عليك إرفاق مصادر Kotlin أو Java وإضافة نقاط إيقاف في الملفات المصدر Kotlin أو Java. وبالمثل، لتصحيح أخطاء الرمز الأصلي، يجب إرفاق الرموز الأصلية لتصحيح الأخطاء.

إرفاق مصادر لغة البرمجة Kotlin أو Java

بشكل تلقائي، يستخرج Android Studio رمز Kotlin أو Java من حزمة APK ويحفظه بتنسيق ملفات SMALI. لتصحيح أخطاء رمز Kotlin أو Java باستخدام نقاط الإيقاف، عليك توجيه بيئة التطوير المتكاملة (IDE) إلى ملفات مصدر Kotlin أو Java التي تتوافق مع ملفات SMALI التي تريد تصحيح أخطائها.

لإرفاق مصادر Kotlin أو Java، اتّبِع الخطوات التالية:

  1. انقر مرّتين على ملف SMALI من جزء المشروع في طريقة عرض Android. بعد فتح الملف، يعرض المحرِّر بانر يطلب منك اختيار مصادر لغة Kotlin أو Java: إرفاق بانر المصادر
  2. انقر على إرفاق مصادر Kotlin/Java... من البانر في نافذة المحرّر.
  3. انتقِل إلى الدليل الذي يتضمّن ملفات مصدر Kotlin أو Java الخاصة بالتطبيق وانقر على Open (فتح).

في نافذة المشروع، يستبدل "استوديو Android" ملفات SMALI بملفات مصدر Kotlin أو Java المقابلة. يتضمن Android Studio أيضًا دروسًا داخلية بشكل تلقائي. يمكنك الآن إضافة نقاط إيقاف وتصحيح أخطاء تطبيقك.

إرفاق الرموز الأصلية لتصحيح الأخطاء

إذا كانت حزمة APK تتضمّن مكتبات أصلية (ملفات SO) لا تتضمن رموز تصحيح الأخطاء، سيعرض لك "استوديو Android" إعلان بانر مشابهًا للبانر الذي يظهر في الشكل 1. لا يمكنك تصحيح الأخطاء في الرمز الأصلي لحزمة APK أو استخدام نقاط الإيقاف بدون إرفاق مكتبات أصلية يمكن تصحيح الأخطاء بها.

لإرفاق المكتبات الأصلية التي يمكن تصحيح الأخطاء بها، يمكنك اتّباع الخطوات التالية:

  1. نزِّل NDK والأدوات إذا لم يسبق لك إجراء ذلك.
  2. في عرض Android، ضمن دليل cpp في نافذة المشروع، انقر مرّتين على ملف مكتبة أصلية لا يتضمن رموز تصحيح الأخطاء.

    يعرض المحرِّر جدولاً يشمل جميع واجهات ABI المتوافقة مع حزمة APK.

  3. انقر على إضافة في أعلى يسار نافذة المحرِّر.

  4. انتقِل إلى الدليل الذي يتضمّن المكتبات الأصلية القابلة لتصحيح الأخطاء والتي تريد إرفاقها وانقر على حسنًا.

إذا تم إنشاء حزمة APK والمكتبات الأصلية التي يمكن تصحيح الأخطاء بها باستخدام محطة عمل مختلفة، عليك أيضًا تحديد المسارات لرموز تصحيح الأخطاء المحلية من خلال اتّباع الخطوات التالية:

  1. أضِف المسارات المحلية إلى رموز تصحيح الأخطاء الناقصة عن طريق تعديل الحقل ضمن عمود المسارات المحلية في قسم تعيينات المسار في نافذة المحرّر، كما هو موضّح في الشكل 2.

    وفي معظم الحالات، تحتاج فقط إلى توفير المسار إلى مجلد جذر، وستفحص أداة Android Studio تلقائيًا الأدلة الفرعية لربط مصادر إضافية. كما يربط استوديو Android تلقائيًا المسارات بـ NDK عن بعد إلى الملف الذي تم تنزيله من موقع NDK المحلي.

  2. انقر على تطبيق التغييرات في قسم تعيينات المسار في نافذة المحرر.

توفير مسارات لرموز تصحيح الأخطاء المحلية

الشكل 2. المسارات المحلية لتصحيح أخطاء الرموز.

تظهر ملفات المصدر الأصلي في نافذة المشروع. افتح ملفات المصدر الأصلية لإضافة نقاط التوقف وتصحيح أخطاء تطبيقك. لإزالة التعيينات، انقر على محو في قسم تعيينات المسار من نافذة المحرّر.

مشكلة معروفة:عند إرفاق رموز تصحيح الأخطاء بحزمة APK، يجب إنشاء كل من ملف APK وملفات SO التي يمكن تصحيح الأخطاء بها باستخدام محطة العمل نفسها أو خادم الإصدار.

في الإصدار 3.6 من استوديو Android والإصدارات الأحدث، لا يلزم إنشاء مشروع جديد عند تحديث حزمة APK خارج بيئة التطوير المتكاملة. يرصد "استوديو Android" التغييرات في حزمة APK ويمنحك خيار إعادة استيرادها.

استيراد حزمة APK المُعدَّلة

الشكل 3. يمكن إعادة استيراد حِزم APK التي تم تعديلها خارج "استوديو Android".