نقل البيانات إلى "استوديو Android"

يتطلّب نقل مشاريعك إلى "استوديو Android" التكيّف مع هيكل المشروع الجديد ونظام التصميم ووظيفة IDE.

إذا كنت تنقل البيانات من IntelliJ وكان مشروعك يستخدم Gradle، يمكنك فتح مشروعك الحالي من "استوديو Android". إذا كنت من مستخدمي IntelliJ ولكن مشروعك لا يستخدم Gradle، عليك إعداد مشروعك يدويًا قبل أن تتمكّن من استيراده إلى "استوديو Android". لمزيد من المعلومات، يمكنك الاطّلاع على قسم النقل من IntelliJ.

أساسيات "استوديو Android"

في ما يلي بعض الاختلافات الرئيسية التي يجب أن تكون على دراية بها أثناء الاستعداد لنقل البيانات إلى "استوديو Android".

تنظيم المشروع والوحدات

يستند "استوديو Android" إلى بيئة تطوير البرامج IntelliJ IDEA. للتعرّف على أساسيات بيئة تطوير البرامج (IDE)، مثل التنقل وإكمال الرموز البرمجية واختصارات لوحة المفاتيح، يمكنك مراجعة استوديو Android على Meet.

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

لمزيد من المعلومات حول المشاريع ووحدات "استوديو Android"، يمكنك الاطّلاع على نظرة عامة على المشاريع.

نظام تصميم مستند إلى Gradle

يستنِد نظام التصميم في "استوديو Android" إلى Gradle ويستخدم ملفات إعداد للإصدار المكتوبة إما بنص Groovy أو نصّ Kotlin لسهولة التوسّع وتخصيص.

توفِّر المشاريع المستنِدة إلى Gradle ميزات كبيرة لتطوير Android، بما في ذلك ما يلي:

  • إتاحة المكتبات الثنائية (AAR) لم تعد بحاجة إلى نسخ مصادر المكتبة إلى مشروعاتك الخاصة؛ حيث يمكنك الإعلان عن التبعية وسيتم تنزيل المكتبة تلقائيًا ودمجها في مشروعك. ويشمل ذلك الدمج التلقائي للموارد وإدخالات البيان وقواعد استبعاد Proguard وقواعد الوبر المخصصة وما إلى ذلك في وقت الإصدار.
  • دعم إنشاء صيغ، التي تتيح لك إنشاء إصدارات مختلفة من تطبيقك (مثل إصدار مجاني وإصدار احترافي) من المشروع نفسه.
  • إمكانية تصميم الإعداد وتخصيصه بسهولة على سبيل المثال، يمكنك سحب أسماء الإصدارات ورموز الإصدار من علامات Git كجزء من التصميم.
  • ويمكن استخدام Gradle من بيئة التطوير المتكاملة (IDE)، ومن سطر الأوامر، ومن خوادم الدمج المستمر مثل Jenkins، والتي توفر الإصدار نفسه في كل مكان وفي كل الأوقات.

لمزيد من المعلومات حول استخدام Gradle وإعدادها، يمكنك الاطّلاع على ضبط تصميمك.

التبعيات

تستخدم تبعيات المكتبة في "استوديو Android" نماذج تبعية Gradle وتبعيات Maven للمصادر المحلية المعروفة والمكتبات الثنائية التي تحتوي على إحداثيات Maven. لمزيد من المعلومات، راجع الإفصاح عن التبعيات.

نقل البيانات من IntelliJ

إذا كان مشروع IntelliJ يستخدم نظام تصميم Gradle، يمكنك استيراد مشروعك مباشرةً إلى "استوديو Android". إذا كان مشروعك على IntelliJ يستخدم Maven أو أي نظام تصميم آخر، عليك إعداده ليتوافق مع Gradle قبل أن تتمكَّن من النقل إلى "استوديو Android".

استيراد مشروع IntelliJ مستنِد إلى Gradle

إذا كنت تستخدم حاليًا Gradle مع مشروع IntelliJ، يمكنك فتحه في "استوديو Android" من خلال اتّباع الخطوات التالية:

  1. انقر على ملف > جديد > استيراد مشروع.
  2. اختَر دليل مشروع IntelliJ وانقر على حسنًا. سيتم فتح مشروعك في Android Studio.

استيراد مشروع غير Gradle IntelliJ

إذا لم يكن مشروع IntelliJ يستخدم نظام تصميم Gradle، يتوفّر لك خياران لاستيراد مشروعك إلى "استوديو Android" الموضَّحة في الأقسام التالية:

نقل البيانات من خلال إنشاء مشروع جديد فارغ

لنقل مشروعك إلى Android Studio من خلال إنشاء مشروع جديد فارغ ونسخ الملفات المصدر إلى الأدلة الجديدة، اتبع الخطوات التالية:

  1. افتح "استوديو Android" وانقر على ملف > جديد > مشروع جديد.
  2. أدخِل اسمًا لمشروع تطبيقك وحدِّد مكان إنشائه، ثم انقر على التالي.
  3. اختَر أشكال الأجهزة التي يعمل عليها تطبيقك، ثم انقر على التالي.
  4. انقر على إضافة عدم النشاط، ثم انقر على إنهاء.
  5. في نافذة أداة المشروع، انقر على السهم لفتح قائمة العرض واختَر عرض المشروع للاطّلاع على المؤسسة الخاصة بمشروعك الجديد على "استوديو Android" واستكشافها. للحصول على مزيد من المعلومات حول تغيير طرق العرض وكيفية بنية "استوديو Android" للمشاريع، يمكنك الاطّلاع على ملفات المشروع.
  6. انتقِل إلى الموقع الذي اخترته لمشروعك الجديد وانقل الرمز واختبارات الوحدات واختبارات الأدوات والموارد من أدلة المشروع القديمة إلى المواقع الصحيحة في بنية مشروعك الجديد.
  7. في "استوديو Android"، انقر على ملف > بنية المشروع لفتح مربّع الحوار بنية المشروع. تأكَّد من اختيار وحدة تطبيقك في اللوحة اليمنى.
  8. عليك إجراء أي تعديلات ضرورية في علامة التبويب الخصائص لمشروعك (على سبيل المثال، تعديل minSdk أو targetSdk).
  9. انقر على التبعيات وأضِف أي مكتبات يعتمد عليها مشروعك على أنّها تبعيات Gradle. لإضافة تبعية جديدة، انقر على رمز إضافة ، ثم اختَر نوع التبعية التي تريد إضافتها واتّبِع التعليمات.
  10. انقر على حسنًا لحفظ التعديلات.
  11. انقر على إنشاء > إنشاء مشروع لاختبار إنشاء مشروعك، وإذا لزم الأمر، حل أي أخطاء عالقة.

نقل البيانات من خلال إنشاء ملف إصدار مخصّص في Gradle

لنقل مشروعك إلى Android Studio من خلال إنشاء ملف إصدار Gradle جديد للإشارة إلى الملفات المصدر الحالية، يمكنك المتابعة على النحو التالي:

  1. قبل البدء، عليك الاحتفاظ بنسخة احتياطية من ملفات مشروعك في مكان منفصل، لأنّ عملية نقل البيانات تؤدي إلى تعديل محتوى مشروعك في مكانه.
  2. أنشِئ ملفًا في دليل المشروع باسم build.gradle إذا كنت تستخدم Groovy أو build.gradle.kts، إذا كنت تستخدم برنامج Kotlin البرمجي. يحتوي هذا الملف على جميع المعلومات المطلوبة لتشغيل Gradle الخاص بك.

    يتوقّع "استوديو Android" تلقائيًا أن يكون مشروعك منظّمًا كما هو موضّح في الشكل 1.

    الشكل 1. بنية المشروع التلقائية لوحدة تطبيق Android.

    في settings.gradle، بالنسبة إلى Groovy أو settings.gradle.kts بالنسبة إلى نص Kotlin البرمجي، يمكنك ضبط المستودعات المستخدمة للعثور على المكوّنات الإضافية والتبعيات في المجموعتَين pluginManagement وdependencyResolutionManagement على التوالي:

    رائع

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include ':app'
      

    Kotlin

      pluginManagement {
          repositories {
              google()
              mavenCentral()
              gradlePluginPortal()
          }
      }
      dependencyResolutionManagement {
          repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS)
          repositories {
              google()
              mavenCentral()
          }
      }
      rootProject.name = "Test App"
      include(":app")
      

    تحذير: في 31 آذار (مارس) 2021، أصبح مستودع JCenter متاحًا للقراءة فقط. لمزيد من المعلومات، يُرجى الاطّلاع على تحديث خدمة JCenter.

    يطبِّق المكوّن الإضافي لنظام Gradle المتوافق مع Android بعض مجموعات المصادر التلقائية على المشروع. وتحدّد مجموعات المصادر هذه الأدلة المستخدَمة لتخزين أنواع مختلفة من ملفات المصدر. تستخدم Gradle مجموعات المصادر هذه لتحديد المواقع الجغرافية لأنواع معيّنة من الملفات. إذا كان مشروعك الحالي لا يتوافق مع الإعدادات التلقائية، يمكنك إما نقل الملفات إلى حيث يجب أن تكون أو تغيير مجموعات المصادر التلقائية كي يعرف Gradle مكان العثور عليها.

    لمعرفة مزيد من المعلومات عن إعداد ملف إصدار Gradle وتخصيصه، يُرجى الاطّلاع على ضبط الإصدار.

  3. بعد ذلك، حدد مشروعات المكتبة التي تستخدمها.

    باستخدام Gradle، لم تعد بحاجة إلى إضافة هذه المكتبات كمشروعات رمز مصدر. يمكنك بدلاً من ذلك الرجوع إليها في مجموعة dependencies{} من ملف الإصدار. بعد ذلك، يعالج نظام الإنشاء هذه المكتبات نيابةً عنك، بما في ذلك تنزيل المكتبات ودمج الموارد ودمج إدخالات البيان. يضيف المثال التالي عبارات التعريف لعدد من مكتبات AndroidX إلى كتلة dependencies{} من ملف الإصدار.

    رائع

    ...
    dependencies {
        implementation fileTree(dir: 'libs', include: ['*.jar'])
    
        // AndroidX libraries
        implementation 'androidx.core:core-ktx:1.12.0'
        implementation 'androidx.appcompat:appcompat:1.6.1'
        implementation 'androidx.cardview:cardview:1.0.0'
        implementation 'com.google.android.material:material:1.7.0'
        implementation 'androidx.gridlayout:gridlayout:1.0.0'
        implementation 'androidx.leanback:leanback:1.1.0-rc02'
        implementation 'androidx.mediarouter:mediarouter:1.7.0'
        implementation 'androidx.palette:palette-ktx:1.0.0'
        implementation 'androidx.recyclerview:recyclerview:1.3.2'
        implementation 'androidx.annotation:annotation:1.7.1'
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle file.
    }

    Kotlin

    ...
    dependencies {
        implementation(fileTree(mapOf("dir" to "libs", "include" to listOf("*.jar"))))
    
        // AndroidX libraries
        implementation("androidx.core:core-ktx:1.12.0")
        implementation("androidx.appcompat:appcompat:1.6.1")
        implementation("androidx.cardview:cardview:1.0.0")
        implementation("com.google.android.material:material:1.7.0")
        implementation("androidx.gridlayout:gridlayout:1.0.0")
        implementation("androidx.leanback:leanback:1.1.0-rc02")
        implementation("androidx.mediarouter:mediarouter:1.7.0")
        implementation("androidx.palette:palette-ktx:1.0.0")
        implementation("androidx.recyclerview:recyclerview:1.3.2")
        implementation("androidx.annotation:annotation:1.7.1")
    
        // Note: these libraries require that the Google repository has been declared
        // in the pluginManagement section of the top-level build.gradle.kts file.
    }
    وللمساعدة في تحديد عبارات التعريف الصحيحة للمكتبات، يمكنك البحث في مستودع Google Maven أو Maven Central.
  4. احفظ ملف build.gradle، ثم أغلِق المشروع في IntelliJ. انتقِل إلى دليل المشروع واحذف دليل .idea وأي ملفات IML في مشروعك.
  5. شغِّل "استوديو Android" وانقر على ملف > جديد > استيراد مشروع.
  6. ابحث عن دليل المشروع، واختَر الملف build.gradle أو build.gradle.kts الذي أنشأته، ثم انقر على حسنًا لاستيراد مشروعك.
  7. انقر على إنشاء > إنشاء مشروع لاختبار ملف الإصدار من خلال إنشاء مشروعك ومعالجة أي أخطاء تعثر عليه.

الخطوات التالية

بعد نقل مشروعك إلى "استوديو Android"، يمكنك التعرّف على مزيد من المعلومات حول إنشاء تطبيق Gradle وتشغيله في "استوديو Android" من خلال الاطّلاع على مقالة إنشاء تطبيقك وتشغيله.

بناءً على مشروعك وسير العمل، قد تحتاج أيضًا إلى معرفة المزيد من المعلومات حول التحكّم في الإصدار وإدارة التبعيات وضبط "استوديو Android". لبدء استخدام "استوديو Android"، يُرجى قراءة استوديو Android في Meet.

ضبط التحكُّم في الإصدار

يدعم استوديو Android مجموعة متنوعة من أنظمة التحكم في الإصدار، بما في ذلك Git وMercurial وSubversion. يمكن إضافة أنظمة التحكم في الإصدار الأخرى من خلال المكونات الإضافية.

إذا كان تطبيقك يخضع للتحكم في المصدر، قد تحتاج إلى تفعيله في "استوديو Android". من قائمة VCS، انقر على تفعيل دمج التحكم في الإصدار واختَر نظام التحكم في الإصدار المناسب.

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

  1. من قائمة VCS في "استوديو Android"، انقر على تفعيل دمج التحكم في الإصدار.
  2. اختَر نظام التحكّم في الإصدار لربطه جذر المشروع من القائمة، ثم انقر على حسنًا. تعرض قائمة VCS الآن عددًا من خيارات التحكم في الإصدار بناءً على النظام الذي حددته.

ملاحظة: يمكنك أيضًا استخدام خيار القائمة ملف > الإعدادات > التحكّم في الإصدار لإعداد عنصر التحكّم في الإصدار وتعديله.

لمزيد من المعلومات حول استخدام التحكم في الإصدار، يمكنك الاطّلاع على مرجع التحكّم في إصدار IntelliJ.

توقيع التطبيق

إذا تم استخدام شهادة تصحيح الأخطاء في السابق، قد يتم رصدها أثناء عملية الاستيراد. في هذه الحالة، يستمر "استوديو Android" في الإشارة إلى هذه الشهادة. أمّا في الحالات الأخرى، فعند ضبط إعدادات تصحيح الأخطاء، يتم استخدام ملف تخزين مفاتيح تصحيح الأخطاء الذي أنشأه "استوديو Android" باستخدام كلمة مرور معروفة ومفتاح تلقائي مع كلمة مرور معروفة في $HOME/.android/debug.keystore. يتم ضبط نوع إصدار تصحيح الأخطاء لاستخدام إعدادات تصحيح الأخطاء هذه تلقائيًا عند تشغيل مشروعك أو تصحيح الأخطاء فيه من "استوديو Android".

وبالمثل، قد تكتشف عملية الاستيراد شهادة إصدار حالية. إذا لم يتم تحديد أي شهادة إصدار سابقًا، يمكنك إضافة إعدادات توقيع الإصدار إلى ملف build.gradle أو build.gradle.kts أو استخدام خيار القائمة إنشاء > إنشاء حزمة APK موقَّعة لفتح أداة إنشاء حِزمة APK الموقَّعة. لمزيد من المعلومات حول توقيع تطبيقك، راجِع مقالة توقيع تطبيقك.

تعديل حجم كومة الذاكرة المؤقتة في "استوديو Android"

وفقًا للإعدادات التلقائية، يبلغ حجم كومة الذاكرة المؤقتة في "استوديو Android" 1280 ميغابايت كحدّ أقصى. إذا كنت تعمل على مشروع كبير أو كان نظامك يحتوي على ذاكرة وصول عشوائي (RAM) كبيرة، يمكنك تحسين الأداء من خلال زيادة الحد الأقصى لحجم كومة الذاكرة المؤقتة.

تحديثات البرامج

ويتم تحديث "استوديو Android" بشكل منفصل عن مكوّن Gradle الإضافي وأدوات الإنشاء وأدوات SDK. يمكنك تحديد الإصدارات التي تريد استخدامها مع "استوديو Android".

يوفّر "استوديو Android" تلقائيًا تحديثات تلقائية عند إطلاق إصدار ثابت وجديد، ولكن يمكنك اختيار إجراء التحديث بوتيرة أكبر والحصول على إصدارات المعاينة أو الإصدارات التجريبية.

للحصول على مزيد من المعلومات حول تحديث "استوديو Android" واستخدام إصدارات المعاينة والإصدارات التجريبية، يمكنك الاطّلاع على التحديثات.