يوضِّح هذا الدليل طريقة تعديل ملفات build.gradle
من مشاريع AGDE حتى
تتمكّن من فتحها في "استوديو Android". إنها مخصصة بشكل أساسي لمهندسي البناء
الذين يديرون مشروعات AGDE.
بعد إدخال التغييرات في هذا الدليل، من المفترض أن يكون بإمكانك:
- يمكنك الإنشاء باستخدام Gradle من سطر الأوامر وAndroid Studio.
- إنشاء حِزم APK وحِزم تطبيقات متعدّدة بتنسيق ABI
- تعديل المصادر مع التوافق الكامل مع خدمات اللغات (مثل "تعريف شامل" وما إلى ذلك) في Android Studio.
- يمكنك استخدام برامج تصحيح أخطاء "استوديو Android" لتصحيح الأخطاء في العمليات الأصلية والمختلطة.
تستند ميزة AGDE هذه إلى الميزة التجريبية لمكوّن Gradle التجريبي لنظام التشغيل Android للتوافق مع Ninja كنظام تصميم.
تعديل ملف Build.grale على مستوى المشروع
عليك تغيير build.gradle
على مستوى المشروع للإشارة إلى الإصدار 7.3.0-alpha02 أو الإصدارات الأحدث من المكوّن الإضافي لنظام Gradle المتوافق مع Android. مثلاً:
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.3.0-alpha02'
}
}
بعد إجراء هذا التغيير، من المفترض أن يظل بإمكانك إنشاء مشروعك في Visual Studio. ننصحك بتجربة ذلك الآن لأنّه سيكون من الأسهل تصحيح الأخطاء قبل إجراء التغييرات أدناه.
نسخ run-msbuild.bat إلى مشروعك
تحتوي عيّنة Teabot التي يتم شحنها مع أحدث
الإصدارات من AGDE على نص يُسمى run-msbuild.bat
. سيتم استدعاء هذا النص البرمجي من AGP وهو مسؤول عن تحديد موقع MSBuild والاستدعاء له.
انسخ run-msbuild.bat
إلى المجلد الذي يحتوي على ملف build.gradle
على مستوى التطبيق.
تعديل ملف build.gradle
على مستوى التطبيق
تتمثل الأهداف الرئيسية لهذه الخطوة في ضبط الطلب على run-msbuild.bat
وإزالة المراجع التي تشير إلى متغيّرات MSBUILD_*
.
ضبط ndkVersion
تغيير ndkVersion
إلى نسخة NDK معيّنة مثلاً:
android {
ndkVersion "22.1.7171670"
}
ضبط minSdkVersion
يجب تغيير minSdkVersion
إلى إصدار محدّد كحد أدنى من حزمة تطوير البرامج (SDK). مثلاً:
android {
defaultConfig {
minSdkVersion 30
}
}
استدعاء run-msbuild.bat
أضِف قسمًا لاستدعاء
run-msbuild.bat
في ملف الحل الخاص بالمشروع.android { defaultConfig { externalNativeBuild { experimentalProperties["ninja.abiFilters"] = [ "x86", "arm64-v8a" ] experimentalProperties["ninja.path"] = "Teapot.sln" experimentalProperties["ninja.configure"] = "run-msbuild" experimentalProperties["ninja.arguments"] = [ "\${ndk.moduleMakeFile}", "-p:Configuration=\${ndk.variantName}", "-p:Platform=Android-\${ndk.abi}", "-p:NinjaBuildLocation=\${ndk.buildRoot}", "-p:NinjaProject=GameApplication", "-p:RequireAndroidNdkVersion=\${ndk.moduleNdkVersion}", "-p:RequireMinSdkVersion=\${ndk.minPlatform}", "-t:GenerateBuildNinja" ] } } }
عليك حذف أي استخدامات لكل من
MSBUILD_JNI_LIBS_SRC_DIR
وMSBUILD_ANDROID_OUTPUT_APK_NAME
وMSBUILD_ANDROID_GRADLE_BUILD_OUTPUT_DIR
.ويمكن عادةً حذف العناصر المحظورة التالية في ملف
build.gradle
على مستوى التطبيق بالكامل.sourceSets { main { jniLibs.srcDirs = [MSBUILD_JNI_LIBS_SRC_DIR] } } applicationVariants.all { variant -> variant.outputs.all { outputFileName = MSBUILD_ANDROID_OUTPUT_APK_NAME } } buildDir = MSBUILD_ANDROID_GRADLE_BUILD_OUTPUT_DIR
ملاحظات
هذه الميزة تجريبية، لذا نقدِّر الملاحظات والآراء. في ما يلي كيفية تقديمه:
- بالنسبة إلى التعليقات والملاحظات العامة، يمكنك إضافة تعليق إلى هذا الخطأ.
- للإبلاغ عن خطأ، افتح "استوديو Android" وانقر على المساعدة/إرسال الملاحظات. تأكد من الرجوع إلى "أنظمة إنشاء C/C++ المخصصة" للمساعدة في توجيه الخطأ.
- انقر على هذا الرابط إذا لم يكن "استوديو Android" مثبّتًا لديك.