الوحدة - تمكين Multidex أو طرق كثيرة جدًا

كيف بدأ كل شيء


تحية للجميع. في مرحلة معينة من تطوير لعبة Android على محرك الوحدة ، واجهت مشكلة واحدة في البناء. بعد إضافة مكونات إضافية مثل Appodeal و Google Play Games إلى المشروع ، تجاوز عدد الطرق المستخدمة 65 كيلو ، وظهر الخطأ التالي أثناء البناء:

Error:Execution failed for task ':app:transformClassesWithDexForDebug'.
> com.android.build.api.transform.TransformException: com.android.ide.common.process.ProcessException: java.util.concurrent.ExecutionException: com.android.dex.DexIndexOverflowException: method ID not in [0, 0xffff]: 65536

بعد قراءة وثائق Appodeal ، أدركت أنني بحاجة لتمكين Multidex. انا قررت ان افعلها. يحتوي الموقع على رابط مع تعليمات Android Studio. ثم نحن في الوحدة ، ماذا نفعل؟

وكل شيء بسيط جدًا ، ما عليك سوى القيام بثلاثة إجراءات:

تمكين نظام بناء Gradle


لتمكين Gradle in Unity في مشروع Android الخاص بك

  1. في الوحدة ، افتح إعدادات البناء ( ملف >> إعدادات البناء )
  2. إذا لم تختر منصة ، فقد حان الوقت للقيام بذلك ( منصة >> Android )
  3. في قائمة نظام البناء ، حدد Gradle ( نظام البناء >> Gradle )

صورة

تغيير إعدادات Gradle


1. لتغيير إعدادات Gradle ، تحتاج أولاً إلى الحصول على ملف إعدادات Gradle ، الموجود في المجلد ( Assets / Plugins / Android / mainTemplate.gradle ). إذا تم تنزيل ملف mainTemplate.gradle من الرابط ولصقه على العنوان Assets / Plugins / Android / :

Download file

2. إذا كان لديك الملف بالفعل ، فأضف السطر multiDexEnabled true إلى كائن defaultConfig

3. إذا كان الحد الأدنى لمستوى واجهة برمجة تطبيقات Android هو 20 أو أقل ، فأضف يجمع هذا السطر "com.android.support:multidex:1.0.1"

4. التعليق أو حذف الخطوط:

minifyEnabled **MINIFY_DEBUG**
useProguard **PROGUARD_DEBUG**

عرض الملف النهائي:

صورة

تهيئة Multidex


إذا تم تعيين الحد الأدنى لمستوى واجهة برمجة تطبيقات Android على 20 أو أقل.

قم بتحديث ملف البيان الموجود في Assets / Plugins / Android / AndroidManifest.XML . إذا لم يكن لديك هذا الملف ، فسيتعين عليك إنشاؤه. يمكنك العثور على AndroidManifest بشكل افتراضي. xml في موقع تثبيت Unity. ولكن سيتعين عليك أيضًا تطبيق إعدادات المشروع لتطبيقك يدويًا: اسم الحزمة والأذونات ومعلمات التكوين والمعلومات الأخرى.

إذا قمت للتو بإنشاء ملف بيان جديد أو كان لديك بالفعل ملف واحد ، فما عليك سوى إضافة هذه المعلمة ( android: name ) على النحو التالي:

صورة

هذا كل شيء. يختفي الخطأ ، وتقوم ببناء مشروعك بهدوء.

شكرا للانتباه.

Source: https://habr.com/ru/post/undefined/


All Articles