การตั้งค่าไลบรารีการสนับสนุน

หมายเหตุ: การเปิดตัว Android 9.0 (API ระดับ 28) มี ไลบรารีการสนับสนุนเวอร์ชันใหม่ที่ชื่อ AndroidX ซึ่งเป็นส่วนหนึ่งของ Jetpack ไลบรารี AndroidX มีไลบรารีการสนับสนุนที่มีอยู่และยังมีคอมโพเนนต์ล่าสุดของ Jetpack ด้วย

คุณสามารถใช้ไลบรารีการสนับสนุนต่อไปได้ อาร์ติแฟกต์ในอดีต (เวอร์ชัน 27 และก่อนหน้าและจัดแพ็กเกจเป็น android.support.*) จะ จะยังคงอยู่ใน Google Maven อย่างไรก็ตาม การพัฒนาไลบรารีใหม่ทั้งหมด จะปรากฏในไลบรารี AndroidX

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

วิธีตั้งค่าไลบรารีการสนับสนุนของ Android ในโปรเจ็กต์การพัฒนาขึ้นอยู่กับฟีเจอร์ และเวอร์ชันแพลตฟอร์ม Android ที่ต้องการรองรับกับ แอปพลิเคชัน

เอกสารนี้จะแนะนำคุณตลอดขั้นตอนการดาวน์โหลดแพ็กเกจ Support Library และการเพิ่มไลบรารี กับสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ของคุณ

ไลบรารีการสนับสนุนพร้อมให้บริการผ่าน Maven ของ Google แล้ว ที่เก็บได้ เราไม่สนับสนุนการดาวน์โหลดไลบรารีผ่าน SDK อีกต่อไป เราจะนำผู้จัดการและฟังก์ชันดังกล่าวออกในเร็วๆ นี้

การเลือกไลบรารีการสนับสนุน

ก่อนเพิ่มไลบรารีการสนับสนุนลงในแอปพลิเคชัน โปรดเลือกฟีเจอร์ที่ต้องการรวมไว้ และ Android เวอร์ชันต่ำสุดที่คุณต้องการรองรับ ดูข้อมูลเพิ่มเติมเกี่ยวกับฟีเจอร์ ที่ให้บริการโดยไลบรารีต่างๆ โปรดดู รองรับฟีเจอร์คลัง

การเพิ่มไลบรารีการสนับสนุน

ในการใช้ไลบรารีการสนับสนุน คุณต้องแก้ไขโปรเจ็กต์ของแอปพลิเคชันของคุณ ทรัพยากร Dependency ของคลาสพาธภายในสภาพแวดล้อมการพัฒนาซอฟต์แวร์ คุณต้องดำเนินการตามขั้นตอนนี้สำหรับ ไลบรารีการสนับสนุนแต่ละรายการที่คุณต้องการใช้

วิธีเพิ่มไลบรารีการสนับสนุนลงในโปรเจ็กต์แอปพลิเคชัน

  1. รวมที่เก็บ 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'
            // }
        }
    }
    
  2. สำหรับแต่ละโมดูลที่คุณต้องการใช้ไลบรารีการสนับสนุน ให้เพิ่มไลบรารีใน บล็อก 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)

การใช้ API ของ Support Library

คลาสไลบรารีการสนับสนุนที่สนับสนุน API เฟรมเวิร์กที่มีอยู่มักจะมี ชื่อเดียวกับคลาสเฟรมเวิร์ก แต่อยู่ในแพ็กเกจคลาส android.support หรือมีคำต่อท้าย *Compat

ข้อควรระวัง: เมื่อใช้คลาสจากไลบรารีการสนับสนุน โปรดตรวจสอบว่าคุณนำเข้า คลาสจากแพ็กเกจที่เหมาะสม เช่น เมื่อใช้ ActionBar ชั้นเรียน:

  • android.support.v7.app.ActionBar เมื่อใช้ไลบรารีการสนับสนุน
  • android.app.ActionBar เมื่อพัฒนาเฉพาะสำหรับ API ระดับ 11 ขึ้นไป

หมายเหตุ: หลังจากรวม Support Library ไว้ในโปรเจ็กต์แอปพลิเคชันแล้ว ขอแนะนำให้คุณย่อ ปรับให้ยากต่อการอ่าน (Obfuscate) และเพิ่มประสิทธิภาพ แอปของคุณสำหรับการเปิดตัว นอกจากการปกป้องซอร์สโค้ดของคุณด้วยการปรับให้ยากต่อการอ่าน (Obfuscation) แล้ว การลดขนาด จะนำชั้นเรียนที่ไม่ได้ใช้ออกจากไลบรารีที่คุณรวมไว้ในแอปพลิเคชันของคุณ ซึ่งทำให้ ให้แอปพลิเคชันของคุณให้เล็กที่สุดเท่าที่จะทำได้

นักพัฒนาซอฟต์แวร์ Android จะได้รับคำแนะนำเพิ่มเติมในการใช้ฟีเจอร์บางอย่างของไลบรารีการสนับสนุน ชั้นเรียนการฝึกอบรม คำแนะนำ และตัวอย่าง สำหรับข้อมูลเพิ่มเติมเกี่ยวกับชั้นเรียนและวิธีการของไลบรารีการสนับสนุนแต่ละรายการ โปรดดู แพ็กเกจ android.support ในการอ้างอิง API

การเปลี่ยนแปลงการประกาศไฟล์ Manifest

หากคุณกำลังเพิ่มความเข้ากันได้แบบย้อนหลังของแอปพลิเคชันที่มีอยู่ให้เป็นเวอร์ชันก่อนหน้า เวอร์ชัน API ของ Android กับไลบรารีการสนับสนุน โปรดตรวจสอบว่าได้อัปเดต ไฟล์ 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 ขึ้นไป