หมายเหตุ: เมื่อมีการเปิดใช้ Android 9.0 (API ระดับ 28) ไลบรารีสนับสนุนเวอร์ชันใหม่ที่เรียกว่า AndroidX ได้ถือกำเนิดขึ้น ซึ่งเป็นส่วนหนึ่งของ Jetpack
ไลบรารี AndroidX ประกอบด้วยไลบรารีการสนับสนุนที่มีอยู่และคอมโพเนนต์ Jetpack เวอร์ชันล่าสุด
คุณใช้คลังการสนับสนุนต่อไปได้
รายการต่างๆ ในอดีต (รายการเวอร์ชัน 27 และก่อนหน้า รวมถึงรายการที่แพ็กเกจเป็น android.support.*
) จะยังคงมีให้บริการใน Google Maven อย่างไรก็ตาม การพัฒนาไลบรารีใหม่ทั้งหมดจะอยู่ในไลบรารี AndroidX
เราขอแนะนําให้ใช้ไลบรารี AndroidX ในโปรเจ็กต์ใหม่ทั้งหมด นอกจากนี้ คุณควรพิจารณาย้ายข้อมูลโปรเจ็กต์ที่มีอยู่ไปยัง AndroidX ด้วย
วิธีตั้งค่าไลบรารีการสนับสนุน Android ในโปรเจ็กต์การพัฒนาจะขึ้นอยู่กับฟีเจอร์ที่คุณต้องการใช้และช่วงเวอร์ชันแพลตฟอร์ม Android ที่ต้องการรองรับด้วยแอปพลิเคชัน
เอกสารนี้จะแนะนำขั้นตอนการดาวน์โหลดแพ็กเกจคลังการสนับสนุนและเพิ่มคลังลงในสภาพแวดล้อมการพัฒนา
ไลบรารีสนับสนุนพร้อมใช้งานแล้วผ่านที่เก็บ Maven ของ Google เราไม่รองรับการดาวน์โหลดไลบรารีผ่าน SDK Manager อีกต่อไป และจะนำฟังก์ชันการทำงานดังกล่าวออกในเร็วๆ นี้
การเลือกไลบรารีการสนับสนุน
ก่อนเพิ่มคลังการสนับสนุนลงในแอปพลิเคชัน ให้เลือกฟีเจอร์ที่ต้องการรวมไว้และ Android เวอร์ชันต่ำสุดที่คุณต้องการรองรับ ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ที่ไลบรารีต่างๆ มีให้บริการได้ที่ฟีเจอร์ของไลบรารีที่รองรับ
การเพิ่มไลบรารีการสนับสนุน
หากต้องการใช้คลังสนับสนุน คุณต้องแก้ไขการพึ่งพา classpath ของโปรเจ็กต์แอปพลิเคชันภายในสภาพแวดล้อมการพัฒนา คุณต้องทําตามขั้นตอนนี้สําหรับห้องสมุดสนับสนุนแต่ละรายการที่ต้องการใช้
วิธีเพิ่มไลบรารีสนับสนุนลงในโปรเจ็กต์แอปพลิเคชัน
- ใส่ที่เก็บ Maven ของ Google ในไฟล์
settings.gradle
ของโปรเจ็กต์dependencyResolutionManagement { repositoriesMode.set(RepositoriesMode.FAIL_ON_PROJECT_REPOS) repositories { google() // If you're using a version of Gradle lower than 4.1, you must // instead use: // // maven { // url 'https://maven.google.com' // } } }
- สำหรับแต่ละโมดูลที่ต้องการใช้คลังสนับสนุน ให้เพิ่มคลังดังกล่าวในบล็อก
dependencies
ของไฟล์build.gradle
ของโมดูล ตัวอย่างเช่น หากต้องการเพิ่มไลบรารี Core-utils v4 ให้เพิ่มรายการต่อไปนี้dependencies { ... implementation "com.android.support:support-core-utils:28.0.0" }
ข้อควรระวัง: การใช้ทรัพยากร Dependency แบบไดนามิก (เช่น palette-v7:23.0.+
) อาจทำให้เกิดการอัปเดตเวอร์ชันที่ไม่คาดคิดและความไม่เข้ากันกับการถดถอย เราขอแนะนำให้คุณระบุเวอร์ชันของไลบรารีอย่างชัดเจน (เช่น palette-v7:28.0.0
)
การใช้ Support Library API
โดยปกติแล้วคลาสในคลังสนับสนุนที่รองรับ API ของเฟรมเวิร์กที่มีอยู่จะมีชื่อเหมือนกับคลาสเฟรมเวิร์ก แต่อยู่ในแพ็กเกจคลาส android.support
หรือมีคำต่อท้าย *Compat
ข้อควรระวัง: เมื่อใช้คลาสจากคลังการสนับสนุน โปรดตรวจสอบว่าคุณนําเข้าคลาสจากแพ็กเกจที่เหมาะสม ตัวอย่างเช่น เมื่อใช้คลาส ActionBar
ผลลัพธ์ที่ได้คือ
android.support.v7.app.ActionBar
เมื่อใช้ Support Libraryandroid.app.ActionBar
เมื่อพัฒนาแอปสำหรับ API ระดับ 11 ขึ้นไปเท่านั้น
หมายเหตุ: หลังจากรวมคลังการสนับสนุนไว้ในโปรเจ็กต์แอปพลิเคชันแล้ว เราขอแนะนําอย่างยิ่งให้คุณบีบอัด สร้างความสับสน และเพิ่มประสิทธิภาพแอปเพื่อเผยแพร่ นอกจากการปกป้องซอร์สโค้ดด้วยการปรับให้ยากต่อการอ่านแล้ว การย่อโค้ดยังนำคลาสที่ไม่ได้ใช้งานออกจากไลบรารีที่คุณรวมไว้ในแอปพลิเคชันด้วย ซึ่งจะช่วยลดขนาดการดาวน์โหลดของแอปพลิเคชันให้เหลือน้อยที่สุด
คำแนะนำเพิ่มเติมในการใช้ฟีเจอร์บางอย่างของ Support Library มีอยู่ในชั้นเรียนการฝึกอบรม คำแนะนำ และตัวอย่างสำหรับนักพัฒนาแอป Android ดูข้อมูลเพิ่มเติมเกี่ยวกับคลาสและเมธอดของไลบรารีสนับสนุนแต่ละรายการได้ที่แพ็กเกจ android.support
ในข้อมูลอ้างอิง API
การเปลี่ยนแปลงการประกาศไฟล์ Manifest
หากคุณเพิ่มความสามารถในการใช้งานร่วมกันย้อนหลังของแอปพลิเคชันที่มีอยู่กับ Android API เวอร์ชันเก่าด้วย Support Library โปรดอัปเดตไฟล์ Manifest ของแอปพลิเคชัน กล่าวโดยละเอียดคือ คุณควรอัปเดตองค์ประกอบ android:minSdkVersion
ของแท็ก
<uses-sdk>
ในไฟล์ Manifest เป็นหมายเลขเวอร์ชันใหม่ที่มีค่าต่ำกว่า ดังที่แสดงด้านล่าง
<uses-sdk android:minSdkVersion="14" android:targetSdkVersion="23" />
การตั้งค่าไฟล์ Manifest จะบอก Google Play ว่าแอปพลิเคชันของคุณติดตั้งในอุปกรณ์ที่ใช้ Android 4.0 (API ระดับ 14) ขึ้นไปได้
หากคุณใช้ไฟล์บิลด์ของ Gradle การตั้งค่า minSdkVersion
ในไฟล์บิลด์จะลบล้างการตั้งค่าในไฟล์ Manifest
plugins { id 'com.android.application' } android { ... defaultConfig { minSdkVersion 16 ... } ... }
ในกรณีนี้ การตั้งค่าไฟล์บิลด์จะบอก Google Play ว่าตัวแปรบิลด์เริ่มต้นของแอปพลิเคชันสามารถติดตั้งในอุปกรณ์ที่ใช้ Android 4.1 (API ระดับ 16) ขึ้นไป ดูข้อมูลเพิ่มเติมเกี่ยวกับตัวแปรการสร้างได้ที่ภาพรวมระบบการสร้าง
หมายเหตุ: หากคุณรวมไลบรารีสนับสนุนหลายรายการ เวอร์ชัน SDK ขั้นต่ำต้องเป็นเวอร์ชันสูงสุดที่ไลบรารีที่ระบุต้องการ ตัวอย่างเช่น หากแอปมีทั้งไลบรารีการสนับสนุนค่ากําหนด v14 และไลบรารี Leanback v17 เวอร์ชัน SDK ขั้นต่ำของคุณต้องเป็น 17 ขึ้นไป