ภาพรวมของ AndroidX

เนมสเปซ androidx ประกอบด้วยไลบรารี Android Jetpack เช่นเดียวกับ Support Library ไลบรารีในเนมสเปซ androidx จะจัดส่งแยกจากแพลตฟอร์ม Android และมอบความเข้ากันได้แบบย้อนหลังใน Android รุ่นต่างๆ

AndroidX เป็นการปรับปรุงที่สำคัญของ Android Support Library เดิม ซึ่งเราไม่ได้ดูแลรักษาอีกต่อไป แพ็กเกจ androidx จะแทนที่ Support Library อย่างสมบูรณ์ด้วยการมอบความเท่าเทียมของฟีเจอร์และไลบรารีใหม่ๆ

นอกจากนี้ AndroidX ยังมีฟีเจอร์ต่อไปนี้ด้วย

  • แพ็กเกจทั้งหมดใน AndroidX จะอยู่ในเนมสเปซที่สอดคล้องกันซึ่งเริ่มต้นด้วยสตริง androidx เราได้แมปแพ็กเกจ Support Library กับแพ็กเกจ androidx.* ที่เกี่ยวข้องแล้ว ดูการแมปทั้งหมดของคลาสเก่า และอาร์ติแฟกต์การสร้างไปยังคลาสใหม่ได้ที่หน้าการปรับโครงสร้างแพ็กเกจ

  • androidx จะได้รับการดูแลและอัปเดตแยกต่างหากจาก Support Library แพ็กเกจ androidx ใช้การกำหนดเวอร์ชันเชิงความหมายที่เข้มงวด โดยเริ่มจากเวอร์ชัน 1.0.0 คุณอัปเดตไลบรารี AndroidX ในโปรเจ็กต์ได้ โดยไม่ขึ้นต่อกัน

  • เวอร์ชัน 28.0.0 เป็นรุ่นสุดท้ายของ Support Library จะไม่มีการเปิดตัวไลบรารี android.support อีกต่อไป การพัฒนาฟีเจอร์ใหม่ทั้งหมดจะอยู่ในเนมสเปซ androidx

การใช้androidxไลบรารีในโปรเจ็กต์

ดูการย้ายข้อมูลไปยัง AndroidX เพื่อดูวิธีย้ายข้อมูลโปรเจ็กต์ที่มีอยู่

หากต้องการใช้ไลบรารี androidx ที่มี Namespace ในโปรเจ็กต์ใหม่ คุณต้องตั้งค่า SDK ที่คอมไพล์เป็น Android 9.0 (API ระดับ 28) ขึ้นไป และตั้งค่า ทั้ง 2 แฟล็กของปลั๊กอิน Android Gradle ต่อไปนี้เป็น true ในไฟล์ gradle.properties

  • android.useAndroidX: เมื่อตั้งค่าสถานะนี้เป็น true ปลั๊กอิน Android จะใช้ไลบรารี AndroidX ที่เหมาะสมแทนไลบรารีการสนับสนุน โดยค่าเริ่มต้น แฟล็กจะเป็น false หากไม่ได้ระบุ
  • android.enableJetifier: เมื่อตั้งค่า Flag นี้เป็น true ปลั๊กอิน Android จะย้ายข้อมูลไลบรารีของบุคคลที่สามที่มีอยู่โดยอัตโนมัติ เพื่อใช้การอ้างอิง AndroidX โดยการเขียนไบนารีใหม่ โดยค่าเริ่มต้น แฟล็กจะเป็น false หากไม่ได้ระบุไว้

ข้อมูลอ้างอิงของ API

คุณดูแพ็กเกจและคลาสทั้งหมดในเนมสเปซ androidx ได้ใน ส่วนข้อมูลอ้างอิง AndroidX

แหล่งข้อมูลเพิ่มเติม

ดูข้อมูลเพิ่มเติมเกี่ยวกับคอมโพเนนต์ในหน้าแรกของ Jetpack ดูข้อมูลเพิ่มเติมเกี่ยวกับการปรับโครงสร้างแพ็กเกจจาก Support Library เป็น androidx ได้ที่บล็อกโพสต์ ในหัวข้อดังกล่าว