แคตตาล็อกเวอร์ชัน Gradle ช่วยให้คุณเพิ่มและรักษาทรัพยากร Dependency และปลั๊กอินด้วยวิธีที่รองรับการปรับขนาด การใช้แคตตาล็อกเวอร์ชัน Gradle ช่วยให้จัดการทรัพยากร Dependency และปลั๊กอินได้ง่ายขึ้น เมื่อคุณมีหลายโมดูล แทนการฮาร์ดโค้ด ชื่อและเวอร์ชันของทรัพยากร Dependency ในไฟล์บิลด์แต่ละรายการและอัปเดตแต่ละไฟล์ เมื่อใดก็ตามที่คุณต้องการอัปเกรดทรัพยากร Dependency คุณสามารถสร้าง แคตตาล็อกเวอร์ชันของทรัพยากร Dependency ที่โมดูลต่างๆ อ้างอิงได้ วิธีที่ปลอดภัยตามประเภทด้วยความช่วยเหลือจาก Android Studio
หน้านี้ให้ข้อมูลพื้นฐานเกี่ยวกับการย้ายข้อมูลแอป Android ของคุณไปยัง แคตตาล็อกเวอร์ชัน ดูข้อมูลเพิ่มเติมได้ที่ เพิ่มทรัพยากร Dependency ของบิลด์และเอกสารประกอบของ Gradle
สร้างไฟล์แคตตาล็อกเวอร์ชัน
เริ่มต้นด้วยการสร้างไฟล์แคตตาล็อกเวอร์ชัน ใน gradle
ของโปรเจ็กต์ราก
ให้สร้างไฟล์ชื่อ libs.versions.toml
Gradle มองหาแคตตาล็อก
ในไฟล์ libs.versions.toml
โดยค่าเริ่มต้น
เราจึงขอแนะนำให้ใช้ชื่อเริ่มต้นนี้
ในไฟล์ libs.versions.toml
ให้เพิ่มส่วนต่อไปนี้
[versions]
[libraries]
[plugins]
ส่วนต่างๆ จะใช้ดังต่อไปนี้
- ในบล็อก
versions
ให้กำหนดตัวแปรที่เก็บเวอร์ชันของ ทรัพยากร Dependency และปลั๊กอิน คุณใช้ตัวแปรเหล่านี้ในการบล็อกที่ตามมา (บล็อกlibraries
และplugins
) - ในบล็อก
libraries
ให้กำหนดทรัพยากร Dependency ของคุณ - กำหนดปลั๊กอินในบล็อก
plugins
ขั้นตอนการย้ายข้อมูล
เราขอแนะนำให้คุณทำตามขั้นตอนตามลำดับที่ระบุไว้ บิลด์สามารถใช้ได้ ทรัพยากร Dependency และปลั๊กอินจากสคริปต์บิลด์และแคตตาล็อกได้พร้อมกัน ดังนั้น ใช้เวลาในการย้ายข้อมูลทรัพยากร Dependency และปลั๊กอินทีละรายการ
กระบวนการย้ายข้อมูลมีดังนี้
- เพิ่มรายการใหม่ลงในแคตตาล็อก
- ซิงค์โปรเจ็กต์ Android
- แทนที่การประกาศสตริงก่อนหน้าด้วยตัวเข้าถึงความปลอดภัยประเภทแคตตาล็อก
ย้ายข้อมูลทรัพยากร Dependency
เพิ่มรายการสำหรับทรัพยากร Dependency แต่ละรายการทั้งในส่วน versions
และ libraries
ของไฟล์ libs.versions.toml
ซิงค์โปรเจ็กต์ แล้วแทนที่
ในไฟล์บิลด์พร้อมด้วยชื่อแคตตาล็อก
ข้อมูลโค้ดนี้จะแสดงไฟล์ build.gradle.kts
ก่อนที่จะนำ
การพึ่งพา:
Kotlin
dependencies { implementation("androidx.core:core-ktx:1.9.0") }
ดึงดูด
dependencies { implementation 'androidx.core:core-ktx:1.9.0' }
ข้อมูลโค้ดนี้แสดงวิธีกำหนด Dependency ในเวอร์ชัน ไฟล์แคตตาล็อก:
[versions]
ktx = "1.9.0"
[libraries]
androidx-ktx = { group = "androidx.core", name = "core-ktx", version.ref = "ktx" }
การตั้งชื่อที่แนะนำสำหรับบล็อกทรัพยากร Dependency ในแคตตาล็อกคือรูปแบบเคบับ (เช่น
androidx-ktx
) ให้ดียิ่งขึ้น
ความช่วยเหลือเกี่ยวกับการเติมโค้ด
ในไฟล์บิลด์
ในไฟล์ build.gradle.kts
ของแต่ละโมดูลที่ต้องใช้ทรัพยากร Dependency
กำหนดทรัพยากร Dependency ด้วยชื่อที่กำหนดไว้ในไฟล์ TOML
Kotlin
dependencies { implementation(libs.androidx.ktx) }
ดึงดูด
dependencies { implementation libs.androidx.ktx }
ย้ายข้อมูลปลั๊กอิน
เพิ่มรายการสำหรับปลั๊กอินแต่ละรายการทั้งในส่วนเวอร์ชันและส่วนปลั๊กอินของ
ไฟล์ libs.versions.toml
ซิงค์โปรเจ็กต์ แล้วแทนที่
การประกาศในบล็อก plugins{}
ในไฟล์บิลด์ที่มีแคตตาล็อก
ข้อมูลโค้ดนี้จะแสดงไฟล์ build.gradle.kts
ก่อนที่จะนำ
ปลั๊กอิน:
Kotlin
// Top-level `build.gradle.kts` file plugins { id("com.android.application") version "7.4.1" apply false } // Module-level `build.gradle.kts` file plugins { id("com.android.application") }
ดึงดูด
// Top-level `build.gradle` file plugins { id 'com.android.application' version '7.4.1' apply false } // Module-level `build.gradle` file plugins { id 'com.android.application' }
ข้อมูลโค้ดนี้แสดงวิธีกำหนดปลั๊กอินในไฟล์แคตตาล็อกเวอร์ชัน ดังนี้
[versions]
androidGradlePlugin = "7.4.1"
[plugins]
android-application = { id = "com.android.application", version.ref = "androidGradlePlugin" }
เช่นเดียวกับการอ้างอิง การจัดรูปแบบที่แนะนำสำหรับ plugins
บล็อกแคตตาล็อก
รายการเป็นแบบเคบับ (เช่น android-application
) เพื่อให้
ความช่วยเหลือเกี่ยวกับการเติมโค้ด
ในไฟล์บิลด์
โค้ดต่อไปนี้แสดงวิธีกำหนดปลั๊กอิน com.android.application
ใน
ไฟล์ build.gradle.kts
ระดับบนสุดและโมดูล ใช้ alias
สำหรับปลั๊กอิน
ที่มาจากไฟล์แคตตาล็อกเวอร์ชันและid
สำหรับปลั๊กอินที่ไม่ได้ส่ง
จากไฟล์แคตตาล็อกเวอร์ชัน เช่น
ปลั๊กอินการประชุม
Kotlin
// Top-level build.gradle.kts plugins { alias(libs.plugins.android.application) apply false } // module build.gradle.kts plugins { alias(libs.plugins.android.application) }
ดึงดูด
// Top-level build.gradle plugins { alias libs.plugins.android.application apply false } // module build.gradle plugins { alias libs.plugins.android.application }
ดูข้อมูลเพิ่มเติม
ดูข้อมูลเกี่ยวกับตัวเลือกเพิ่มเติมสำหรับการกำหนดค่าแคตตาล็อกเวอร์ชันได้ที่ แหล่งข้อมูลเหล่านี้
- รูปแบบไฟล์ TOML ของแคตตาล็อกเวอร์ชัน เอกสาร ตัวเลือกเพิ่มเติม สำหรับการกำหนดค่าไฟล์แคตตาล็อกของคุณ
- ตอนนี้ใน Android คือ แอปตัวอย่างที่ใช้แคตตาล็อกเวอร์ชัน
ปัญหาที่ทราบ
แคตตาล็อกเวอร์ชัน Gradle ยังอยู่ระหว่างการพัฒนา สำหรับข้อมูลเพิ่มเติมเกี่ยวกับ สิ่งที่ยังไม่รองรับ โปรดดูที่ ปัญหาที่ทราบและข้อจำกัด