إضافة موارد تطبيقات

يتم تنظيم موارد التطبيق، مثل الصور النقطية والتنسيقات، في أدلة خاصة بالنوع نفسه داخل دليل res/ لكل وحدة. ويمكنك أيضًا إضافة إصدارات بديلة من كل ملف يتم تحسينها لتهيئات مختلفة للأجهزة، مثل إصدار عالي الدقة من صورة نقطية للشاشات عالية الكثافة.

يتيح لك "استوديو Android" إضافة موارد جديدة وموارد بديلة بعدة طرق حسب نوع المورد الذي تريد إضافته. تصف هذه الصفحة كيفية إضافة ملفات الموارد الأساسية وكيفية تغيير موقع مواردك وكيفية عمل دمج الموارد.

اطلع على الصفحات التالية للحصول على تفاصيل حول كيفية إنشاء أنواع موارد محددة:

للحصول على معلومات حول كيفية الإشارة إلى الموارد من رمز التطبيق، يمكنك الاطّلاع على مقالة نظرة عامة على موارد التطبيق.

إضافة ملف موارد XML

على الرغم من أنّ روابط الصفحة السابقة تصف عمليات سير العمل التي يتم تخصيصها لكل نوع من أنواع الموارد، يمكنك إضافة أي ملف موارد XML باتّباع الخطوات التالية:

  1. انقر على وحدة التطبيق المستهدَف في نافذة المشروع إما في عرض Android أو المشروع.

  2. اختَر ملف > جديد > ملف مورد Android.

    الشكل 1. مربّع الحوار ملف مورد جديد.

  3. املأ التفاصيل في مربّع الحوار:
    • اسم الملف: أدخِل اسم ملف XML (لا يتطلّب ذلك اللاحقة .xml).
    • نوع المورد: اختَر نوع المورد الذي تريد إنشاءه.
    • عنصر الجذر: اختَر عنصر XML الجذر الخاص بالملف، إن أمكن. تتيح بعض أنواع الموارد نوعًا واحدًا فقط من العناصر الجذر. وقد لا يكون هذا النموذج قابلاً للتعديل، وذلك استنادًا إلى نوع المورد المحدّد.
    • مجموعة المصادر: اختَر مجموعة المصادر التي تريد حفظ الملف فيها.
    • اسم الدليل: يجب تسمية الدليل بطريقة تخصّ نوع المورد ومؤهِّلات الضبط. لا تعدِّل ذلك إلا إذا كنت تريد إضافة مؤهلات الإعداد إلى اسم الدليل يدويًا (استخدِم المؤهِّلات المتاحة بدلاً من ذلك).
    • المؤهِّلات المتاحة: بدلاً من تضمين مؤهِّلات الضبط يدويًا في اسم الدليل، يمكنك إضافتها من خلال اختيار مؤهِّل من القائمة والنقر على إضافة .
  4. بعد إضافة جميع المؤهِّلات التي تريدها، انقر على حسنًا.

نصيحة: لفتح نسخة مبسّطة من مربّع الحوار ملف مورد جديد خاص بنوع المورد الذي تريد إضافته، انقر بزر الماوس الأيمن على دليل موارد حالي في مجلد res واختَر جديد > type-name ملف المورد.

تضمين موارد XML معقدة

تتطلب بعض الموارد المعقدة ملفات موارد XML متعددة. على سبيل المثال، يتضمن المتجه المتحرك القابل للرسم كائنًا متجهًا قابلاً للرسم وكائن صورة متحركة ويتطلب ثلاثة ملفات XML على الأقل.

في هذا المثال، يمكنك إنشاء ملفات XML الثلاثة المنفصلة والاحتفاظ بها إذا كنت بحاجة إلى إعادة استخدام ملف واحد أو أكثر منها. أما إذا لم يتم استخدام ملفات XML سوى لهذا المتجه المتحرك القابل للرسم، يمكنك بدلاً من ذلك استخدام تنسيق الموارد المضمّن المتوفّر في أداة Android Asset Packaging Tool (AAPT). باستخدام AAPT، يمكنك تحديد جميع الموارد الثلاثة في ملف XML واحد. لمزيد من المعلومات، يُرجى الاطّلاع على موارد XML المعقدة المضمّنة.

إضافة دليل موارد

لإضافة دليل موارد جديد، اتّبِع الخطوات التالية:

  1. انقر على وحدة التطبيق المستهدَف في نافذة المشروع.

  2. اختَر ملف > جديد > دليل موارد Android.

    الشكل 2. مربع الحوار دليل الموارد الجديد.

  3. املأ التفاصيل في مربّع الحوار:
    • اسم الدليل: يجب تسمية الدليل بطريقة خاصة بنوع المورد ومجموعة من مؤهلات الضبط. لا تعدِّل هذا الخيار إلا إذا كنت تريد إضافة مؤهلات الإعداد إلى اسم الدليل يدويًا (استخدِم المؤهِّلات المتاحة بدلاً من ذلك).
    • نوع المورد: اختَر نوع المورد الذي تريد تضمين الدليل فيه.
    • مجموعة المصادر: اختَر مجموعة المصادر التي تريد إضافة الدليل إليها.
    • المؤهِّلات المتاحة: بدلاً من تضمين مؤهِّلات الضبط يدويًا في اسم الدليل، يمكنك إضافتها من خلال اختيار مؤهِّل من القائمة والنقر على إضافة .
  4. بعد إضافة جميع المؤهِّلات التي تريدها، انقر على حسنًا.

تغيير دليل الموارد

تقع الموارد تلقائيًا في module-name/src/source-set-name/res/. على سبيل المثال، موارد مجموعة المصدر الرئيسية لوحدتك متوفّرة في src/main/res/، وموارد مجموعة مصادر تصحيح الأخطاء متوفّرة في src/debug/res/.

مع ذلك، يمكنك تغيير هذه المسارات إلى أي موقع جغرافي آخر (بالنسبة إلى ملف build.gradle) باستخدام السمة res.srcDirs في مجموعة sourceSets. مثلاً:

رائع

android {
    sourceSets {
        main {
            res.srcDirs = ['resources/main']
        }
        debug {
            res.srcDirs = ['resources/debug']
        }
    }
}

Kotlin

android {
    sourceSets {
        getByName("main") {
            res.srcDirs("resources/main")
        }
        getByName("debug") {
            res.srcDirs("resources/debug")
        }
    }
}

يمكنك أيضًا تحديد عدة دلائل موارد لمجموعة مصادر واحدة، ثم دمج أدوات الإنشاء معًا. مثلاً:

رائع


android {
    sourceSets {
        main {
            res.srcDirs = ['res1', 'res2']
        }
    }
}

Kotlin

android {
    sourceSets {
        main {
            res.srcDirs("res1", "res2")
        }
    }
}

لمزيد من المعلومات، اطّلِع على معلومات عن المجموعات المصدر.

دمج الموارد

يمكن أن تأتي الموارد في ملف التطبيق النهائي من ثلاثة مصادر:

  • مجموعة المصدر الرئيسية (الموجودة بشكل عام في src/main/res/)
  • إنشاء خيارات المنتج مجموعات المصادر
  • مكتبات Android (الاقتراحات المطبّقة تلقائيًا)

عندما تكون جميع الموارد من كل مجموعة مصدر أو مكتبة فريدة من نوعها، تتم إضافتها جميعًا إلى التطبيق النهائي. يُعتبر المورد فريدًا إذا كان اسم ملفه فريدًا ضمن كل من دليل نوع المورد ومؤهِّل المورد (في حال تحديده).

إذا كان هناك إصداران مطابقان أو أكثر من نفس المورد، سيتم تضمين إصدار واحد فقط في التطبيق النهائي. وتحدد أدوات الإصدار الإصدار الذي يجب الاحتفاظ به بناءً على ترتيب الأولوية التالي (الأولوية الأعلى على اليسار):

صيغة الإصدار > نوع التصميم > نكهة المنتج > مجموعة المصدر الرئيسية > تبعيات المكتبة

على سبيل المثال، إذا كانت مجموعة المصادر الرئيسية تحتوي على:

  • res/layout/example.xml
  • res/layout-land/example.xml

ويحتوي نوع إصدار تصحيح الأخطاء على:

  • res/layout/example.xml

يتضمّن التطبيق النهائي بعد ذلك res/layout/example.xml من نوع إصدار تصحيح الأخطاء وres/layout-land/example.xml من مجموعة المصادر الرئيسية.

ومع ذلك، إذا كانت إعدادات الإصدار تحدّد مجلدات موارد متعددة لمجموعة مصادر معيّنة وواجهت تعارضات بين هذه المصادر، يحدث خطأ وستتعذّر عملية الدمج لأنّ كل دليل موارد له الأولوية نفسها.