sdkmanager
เป็นเครื่องมือบรรทัดคำสั่งที่ให้คุณดู ติดตั้ง
อัปเดต และถอนการติดตั้งแพ็กเกจสำหรับ Android SDK หากใช้ Android
Studio คุณไม่จำเป็นต้องใช้เครื่องมือนี้ และคุณสามารถจัดการ
แพ็กเกจ SDK จาก IDE
เครื่องมือ sdkmanager
มีให้บริการใน
แพ็กเกจเครื่องมือบรรทัดคำสั่ง Android SDK
หากต้องการใช้เครื่องมือจัดการ SDK เพื่อติดตั้งเครื่องมือบรรทัดคำสั่งเวอร์ชันใดเวอร์ชันหนึ่ง ให้ทำตามขั้นตอนต่อไปนี้
- ดาวน์โหลดแพ็กเกจ "เครื่องมือบรรทัดคำสั่งเท่านั้น" เวอร์ชันล่าสุดจากหน้าดาวน์โหลด Android Studio แล้วแตกไฟล์แพ็กเกจ
- ย้ายไดเรกทอรี
cmdline-tools
ที่แตกไฟล์แล้วไปยังไดเรกทอรีใหม่ตามต้องการ เช่น android_sdk ไดเรกทอรีใหม่นี้เป็น ไดเรกทอรี Android SDK - ในไดเรกทอรี
cmdline-tools
ที่แตกแล้ว ให้สร้าง ไดเรกทอรีย่อยที่ชื่อlatest
- ย้ายเนื้อหาไดเรกทอรีต้นฉบับ
cmdline-tools
ซึ่งรวมถึง ไดเรกทอรีlib
ไดเรกทอรีbin
NOTICE.txt
และsource.properties
ลงในไฟล์ ไดเรกทอรีlatest
ที่สร้างใหม่ ตอนนี้คุณใช้เครื่องมือบรรทัดคำสั่งจากตำแหน่งนี้ได้ (ไม่บังคับ) หากต้องการติดตั้งเครื่องมือบรรทัดคำสั่งเวอร์ชันก่อนหน้า ให้เรียกใช้ คำสั่งต่อไปนี้
android_sdk/cmdline-tools/latest/bin/sdkmanager --install "cmdline-tools;version"
แทนที่version
ด้วยเวอร์ชันที่ต้องการติดตั้ง เช่น5.0
การใช้งาน
คุณสามารถใช้ sdkmanager
เพื่อแสดงรายการแพ็กเกจที่ติดตั้งไว้และพร้อมใช้งาน ติดตั้ง
แพ็กเกจ และอัปเดตแพ็กเกจต่างๆ โปรดดูรายละเอียดเพิ่มเติมที่หัวข้อด้านล่าง
แสดงรายการแพ็กเกจที่ติดตั้งและพร้อมใช้งาน
หากต้องการแสดงรายการแพ็กเกจที่ติดตั้งและพร้อมใช้งาน ให้ใช้ไวยากรณ์ต่อไปนี้
sdkmanager --list [options] \ [--channel=channel_id] // Channels: 0 (stable), 1 (beta), 2 (dev), or 3 (canary)
ใช้ตัวเลือก channel
เพื่อรวมแพ็กเกจจากช่องสูงสุด และ
รวมถึง channel_id
เช่น ระบุช่อง Canary ที่จะแสดงรายการ
แพ็กเกจจากทุกช่อง
ติดตั้งแพ็กเกจ
หากต้องการติดตั้งแพ็กเกจ ให้ใช้ไวยากรณ์ต่อไปนี้
sdkmanager packages [options]
อาร์กิวเมนต์ packages เป็นเส้นทางรูปแบบ SDK ตามที่แสดง
คำสั่ง --list
ที่อยู่ในเครื่องหมายคำพูด ตัวอย่างเช่น
"build-tools;34.0.0"
หรือ
"platforms;android-33"
คุณสามารถส่งเส้นทางแพ็กเกจหลายรายการโดยคั่นด้วยเว้นวรรค แต่แต่ละรายการต้องอยู่ในชุดเครื่องหมายคำพูดของตัวเอง เช่น วิธีติดตั้งเครื่องมือล่าสุดของแพลตฟอร์มและ เครื่องมือ SDK สำหรับ API ระดับ 33:
sdkmanager "platform-tools" "platforms;android-33"
หรือคุณจะส่งไฟล์ข้อความที่ระบุแพ็กเกจทั้งหมดก็ได้ ดังนี้
sdkmanager --package_file=package_file [options]
อาร์กิวเมนต์ package_file คือตำแหน่งของไฟล์ข้อความที่แต่ละบรรทัดเป็นเส้นทางสไตล์ SDK ของแพ็กเกจที่จะติดตั้ง (ไม่มีเครื่องหมายคำพูด)
หากต้องการถอนการติดตั้ง ให้เพิ่ม Flag --uninstall
ดังนี้
sdkmanager --uninstall packages [options] sdkmanager --uninstall --package_file=package_file [options]
หากต้องการติดตั้ง CMake หรือ NDK ให้ใช้ไวยากรณ์ต่อไปนี้
sdkmanager --install ["ndk;major.minor.build[suffix]" | "cmake;major.minor.micro.build"] [--channel=channel_id] // NDK channels: 0 (stable), 1 (beta), or 3 (canary)
เช่น ใช้คำสั่งต่อไปนี้เพื่อติดตั้งเวอร์ชัน NDK ที่ระบุ ไม่ว่าปัจจุบันจะอยู่บนช่องใดก็ตาม:
sdkmanager --install "ndk;21.3.6528147" --channel=3 // Install the NDK from the canary channel (or below) sdkmanager --install "cmake;10.24988404" // Install a specific version of CMake
อัปเดตแพ็กเกจที่ติดตั้งไว้ทั้งหมด
หากต้องการอัปเดตแพ็กเกจที่ติดตั้งทั้งหมด ให้ใช้ไวยากรณ์ต่อไปนี้
sdkmanager --update [options]
ยอมรับใบอนุญาต
คุณต้องยอมรับใบอนุญาตที่จำเป็นสำหรับแต่ละแพ็กเกจที่คุณติดตั้ง ขั้นตอนนี้จะเกิดขึ้นในระหว่างขั้นตอนการติดตั้งเมื่อคุณติดตั้ง แพ็กเกจจากภายใน Android Studio
หากคุณไม่ได้ติดตั้ง Android Studio ไว้หรือใช้สำหรับเซิร์ฟเวอร์ CI หรืออุปกรณ์ Linux แบบไม่มีส่วนหัวอื่นๆ ที่ไม่ได้ติดตั้ง GUI ไว้ ต่อไปนี้จากบรรทัดคำสั่ง
sdkmanager --licenses
ซึ่งระบบจะแจ้งให้คุณยอมรับใบอนุญาตที่ยังไม่ได้ยอมรับ
ตัวเลือก
ตารางต่อไปนี้แสดงตัวเลือกที่ใช้ได้สำหรับคำสั่งที่แสดงในส่วนก่อนหน้านี้
ตัวเลือก | คำอธิบาย |
---|---|
--sdk_root=path
|
ใช้เส้นทาง SDK ที่ระบุแทน SDK ที่มีเครื่องมือนี้ |
--channel=channel_id
|
รวมแพ็กเกจไว้ในช่องได้สูงสุด และรวม channel_id ไว้ด้วย พร้อมใช้งาน
แชแนล ได้แก่
|
--include_obsolete
|
ระบุแพ็กเกจที่ล้าสมัยในข้อมูลแพ็กเกจหรือการอัปเดตแพ็กเกจ
สำหรับใช้กับ --list และ --update เท่านั้น
|
--no_https
|
บังคับให้การเชื่อมต่อทั้งหมดใช้ HTTP แทน HTTPS |
--newer
|
เมื่อใช้ --list ให้แสดงเฉพาะแพ็กเกจใหม่หรือแพ็กเกจที่อัปเดตได้
|
--verbose
|
โหมดเอาต์พุตแบบละเอียด ระบบจะพิมพ์ข้อผิดพลาด คำเตือน และข้อความที่ให้ข้อมูล |
--proxy={http | socks}
|
เชื่อมต่อผ่านพร็อกซีของประเภทที่ระบุ: http สำหรับ
โปรโตคอลระดับสูง เช่น HTTP หรือ FTP หรือ
socks สำหรับพร็อกซี SOCKS (V4 หรือ V5)
|
--proxy_host={IP_address | DNS_address}
|
ที่อยู่ IP หรือ DNS ของพร็อกซีที่จะใช้ |
--proxy_port=port_number
|
หมายเลขพอร์ตของพร็อกซีที่จะเชื่อมต่อ |