คู่มือนี้อธิบายวิธีแก้ไขไฟล์ build.gradle
จากโปรเจ็กต์ AGDE
คุณจะเปิดได้ใน Android Studio จุดประสงค์หลักสำหรับวิศวกรบิลด์
ที่จัดการโปรเจ็กต์ AGDE
หลังจากที่มีการเปลี่ยนแปลงในคู่มือนี้แล้ว คุณควรจะทำสิ่งต่อไปนี้ได้
- สร้างด้วย Gradle จากบรรทัดคำสั่งและ Android Studio
- สร้าง APK และ App Bundle แบบ ABI หลายรายการ
- แก้ไขแหล่งข้อมูลด้วยการสนับสนุนบริการภาษาเต็มรูปแบบ (ไปที่คำจำกัดความ และอื่นๆ) ใน Android Studio
- ใช้โปรแกรมแก้ไขข้อบกพร่องของ Android Studio เพื่อแก้ไขข้อบกพร่องของกระบวนการดั้งเดิมและกระบวนการผสม
ฟีเจอร์ AGDE นี้สร้างขึ้นจากฟีเจอร์ปลั๊กอิน Android Gradle เวอร์ชันทดลองเพื่อ สนับสนุน Ninja เป็นระบบบิลด์
แก้ไขไฟล์build.gradle ระดับโปรเจ็กต์
เปลี่ยน build.gradle
ระดับโปรเจ็กต์เพื่อดูปลั๊กอิน Android Gradle
เวอร์ชัน 7.3.0-alpha02 หรือใหม่กว่า เช่น
buildscript {
repositories {
google()
mavenCentral()
}
dependencies {
classpath 'com.android.tools.build:gradle:7.3.0-alpha02'
}
}
หลังจากการเปลี่ยนแปลงนี้ คุณควรจะสร้างโปรเจ็กต์ได้ใน Visual ได้ Studio เราขอแนะนำให้คุณลองใช้ตั้งแต่ตอนนี้เนื่องจากจะช่วยให้แก้ไขข้อบกพร่องได้ง่ายขึ้น ก่อนทำการเปลี่ยนแปลงด้านล่าง
คัดลอก Run-msbuild.bat ลงในโปรเจ็กต์ของคุณ
ตัวอย่างกาน้ำชาที่จัดส่งพร้อมผลิตภัณฑ์ล่าสุด
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 Studio แล้วคลิกความช่วยเหลือ/ส่งความคิดเห็น เป็น อย่าลืมอ้างอิง "ระบบบิลด์ C/C++ ที่กำหนดเอง" เพื่อช่วยกำหนดเส้นทางข้อบกพร่อง
- คลิกลิงก์นี้หากยังไม่ได้ติดตั้ง Android Studio