Android CLI เป็นอินเทอร์เฟซบรรทัดคำสั่งที่ช่วยให้คุณสร้างแอปสำหรับ Android ได้ง่ายและมีประสิทธิภาพมากขึ้นโดยใช้เครื่องมือใดก็ได้ที่คุณเลือก โดยจะกำหนดมาตรฐานความสามารถหลักในการพัฒนาสำหรับเวิร์กโฟลว์ที่เน้นเอเจนต์เป็นอันดับแรก ซึ่งเป็นจุดเริ่มต้นสำหรับเครื่องมือ ทักษะ และความรู้ที่เป็นทางการที่คุณต้องใช้ในการพัฒนาอย่างมีประสิทธิภาพมากขึ้น นอกจากนี้ ยังช่วยเพิ่มประสิทธิภาพ CI, การบำรุงรักษา และการทำงานอัตโนมัติอื่นๆ ที่เขียนสคริปต์ไว้ สำหรับการพัฒนา Android ที่มีการกระจายมากขึ้นด้วย
ตัวอย่างเช่น เอเจนต์หรือสคริปต์สามารถใช้ CLI เพื่อทำงานต่างๆ เช่น ต่อไปนี้
- ตั้งค่าสภาพแวดล้อมโดยอัตโนมัติ
- สร้างโปรเจ็กต์ใหม่จากเทมเพลต
- จัดการอุปกรณ์เสมือนได้โดยตรงจากเทอร์มินัล
- ทดสอบแอปด้วยเส้นทางการท่องเว็บ
นอกจากนี้ Android CLI ยังให้สิทธิ์ตัวแทนเข้าถึงทักษะ Android และฐานความรู้ Android เฉพาะทาง เพื่อช่วยให้มั่นใจว่าโปรเจ็กต์ ของคุณใช้รูปแบบและแนวทางปฏิบัติแนะนำที่ Android แนะนำ
ติดตั้ง Android CLI
หากต้องการติดตั้ง Android CLI ให้ทำตามขั้นตอนต่อไปนี้
หากต้องการตรวจสอบว่าคุณใช้เวอร์ชันล่าสุดอยู่หรือไม่ ให้อัปเดต Android CLI โดยทำดังนี้
android update
หากต้องการตรวจสอบว่าติดตั้ง Android CLI ในเครื่องแล้วหรือไม่ ให้เรียกใช้
which android หรือ command -v android หากระบบแสดงเส้นทาง แสดงว่าได้ติดตั้งแล้ว
ตั้งค่าสำหรับตัวแทน
หากต้องการช่วยให้ตัวแทนเข้าใจและใช้ Android CLI ให้เรียกใช้ init เพื่อติดตั้งทักษะ android-cli
android init
ข้อมูลที่รวบรวม
Android CLI จะรวบรวมข้อมูลเกี่ยวกับการใช้งานเครื่องมือขั้นพื้นฐาน ข้อมูลที่เรา รวบรวมมีดังนี้
- การเรียกใช้คำสั่ง
androidและคำสั่งย่อย เช่นandroid runและandroid create - ชื่อของอาร์กิวเมนต์หรือตัวเลือกที่ไม่ใช่ตำแหน่งที่ใช้ เช่น
--sdkหรือ--version - อาร์กิวเมนต์ตำแหน่งและค่าแฟล็กที่แมปกับชุดตัวเลือกของระบบที่กำหนดไว้ล่วงหน้าแบบคงที่ ซึ่งจัดการโดย Android CLI เช่น เราจะรวบรวมชื่อเทมเพลตโปรแกรมจำลอง เช่น
medium_phoneและlarge_desktopรวมถึงชื่อเอเจนต์ เช่นGEMINI,CLAUDEหรือCODEX - Stack Trace และข้อความข้อยกเว้น โดยระบบจะลบข้อมูลระบุตัวบุคคล ออกก่อนการรวบรวมเพื่อช่วยให้มั่นใจในความเป็นส่วนตัว
ตัวอย่างข้อมูลที่เราไม่รวบรวมมีดังนี้
- เราจะไม่รวบรวมการตอบกลับของ CLI เมื่อมีการเรียกใช้คำสั่ง
- เราจะไม่รวบรวมข้อมูลที่ผู้ใช้สร้างขึ้นหรือตัวระบุภายนอกที่ส่งไปยัง CLI เช่น พิกัด Maven ที่เฉพาะเจาะจง เส้นทางไฟล์ในเครื่อง หรือชื่อโปรเจ็กต์ที่กำหนดเอง เช่น หากมีการเรียกใช้คำสั่ง
android create --name=com.company.internal.appเราจะบันทึก ว่ามีการเรียกใช้android createโดยใช้อาร์กิวเมนต์--nameแต่เราจะไม่ จัดเก็บค่าcom.company.internal.app
ปัญหาที่ทราบแล้ว
- ขณะนี้คำสั่ง
android emulatorสำหรับ Windows ปิดใช้อยู่ - ขณะนี้ระบบยังไม่รองรับการดาวน์โหลด Android CLI จาก Windows PowerShell
หากพบปัญหาหรือต้องการแสดงความคิดเห็น โปรดรายงานข้อบกพร่อง
กำหนดค่า Android CLI
สร้างไฟล์ .androidrc เพื่อใช้ Flag และตัวเลือกโดยอัตโนมัติ
ทุกครั้งที่คุณเรียกใช้ Android CLI บันทึกไฟล์ในตำแหน่งต่อไปนี้
โดยขึ้นอยู่กับระบบปฏิบัติการ
- macOS และ Linux:
~/.androidrc - Windows:
%USERPROFILE%\.androidrc
เพิ่มแฟล็กที่ต้องการใช้กับไฟล์โดยอัตโนมัติ โดยเพิ่มแฟล็ก 1 รายการต่อบรรทัด
เช่น หากต้องการให้ Android CLI ใช้ Android SDK ที่เฉพาะเจาะจงโดยค่าเริ่มต้น
ทุกครั้ง ให้เพิ่ม Flag --sdk ลงในไฟล์
--sdk=<path-to-sdk>
ตัวเลือกทั่วโลก
โดยเป็นแฟล็กที่ไม่บังคับซึ่งคุณใช้กับคำสั่ง CLI อื่นๆ ของ Android ได้
-h, --help
การใช้งาน: android <command> -h
คำอธิบาย: แสดงคู่มือความช่วยเหลือสำหรับเครื่องมือหรือคำสั่งที่เฉพาะเจาะจงที่เป็นปัญหา
ตัวอย่าง
android -handroid create -h
--sdk
การใช้งาน: android --sdk=<path-to-sdk> <command>
คำอธิบาย: เส้นทางไปยัง Android SDK ที่คุณต้องการใช้สำหรับ
คำสั่งที่ตามมา คุณสามารถใช้--sdkการตั้งค่าเพื่อลบล้างชั่วคราว
Android SDK เริ่มต้นแทนการเปลี่ยน
ตัวแปรสภาพแวดล้อมส่วนกลางทุกครั้งที่ต้องการ
สลับ หากต้องการตรวจสอบว่าคุณใช้ Android SDK ใดโดยค่าเริ่มต้น ให้เรียกใช้
android info
ตัวอย่าง: android --sdk=<path/to/sdk> sdk list
คำสั่ง
ส่วนนี้แสดงรายการคำสั่ง Android CLI ทั้งหมดและอธิบายสิ่งที่คำสั่งเหล่านั้นทำ
คำสั่งทั้งหมดนี้ควรนำหน้าด้วย android เช่น
android create, android run และอื่นๆ ตัวแก้ไขที่ไม่บังคับจะอยู่ในวงเล็บ [] และอาร์กิวเมนต์ที่บังคับจะไม่อยู่ในวงเล็บ
create
การใช้งาน: android create [--dry-run] [--verbose] [--name=<application-name>] [--output=<dest-path>] [<template-name>]
คำอธิบาย: เริ่มต้นโปรเจ็กต์ใหม่จากเทมเพลต หากต้องการดูตัวเลือกเทมเพลต ให้เรียกใช้ android create -h
อาร์กิวเมนต์ (ต้องระบุ):
-o, --output- เส้นทางไดเรกทอรีของโปรเจ็กต์ปลายทาง
ตัวเลือก:
--dry-run- จำลองกระบวนการสร้างโปรเจ็กต์ทั้งหมดโดยไม่ต้อง บันทึกไฟล์ใดๆ จริงๆ เช่น คุณสามารถทำการทดลองเรียกใช้เพื่อดูว่าเทมเพลตต่างๆ ทําอะไรได้บ้างก่อนที่จะเลือกเทมเพลตใดเทมเพลตหนึ่ง--verbose- เปิดใช้เอาต์พุตแบบละเอียด ซึ่งรวมถึงข้อมูล เช่น ไฟล์ที่คัดลอกจากเทมเพลต--name=<application-name>- ชื่อของไดเรกทอรีโปรเจ็กต์ หาก ละเว้น ระบบจะใช้ไดเรกทอรีเอาต์พุต<template-name>- ชื่อของเทมเพลตที่จะใช้สร้างโปรเจ็กต์ใหม่ หากละไว้ ระบบจะใช้empty-activity-agp-9
ตัวอย่าง: android create --dry-run --verbose empty-activity-agp-9
create list
การใช้งาน: android create list
คำอธิบาย: แสดงรายการเทมเพลตทั้งหมดที่พร้อมใช้งานเพื่อสร้างโปรเจ็กต์ใหม่
describe
การใช้งาน: android describe [--project_dir=<project-directory>]
คำอธิบาย: วิเคราะห์โปรเจ็กต์ Android เพื่อสร้างข้อมูลเมตาเชิงอธิบาย คำสั่งนี้จะระบุและแสดงเส้นทางไปยังไฟล์ JSON ที่ให้รายละเอียดโครงสร้างของโปรเจ็กต์ ซึ่งรวมถึงเป้าหมายการบิลด์และตำแหน่งของอาร์ติแฟกต์เอาต์พุตที่เกี่ยวข้อง (เช่น ไฟล์ APK) ข้อมูลนี้ช่วยให้เครื่องมือและคำสั่งอื่นๆ ค้นหาอาร์ติแฟกต์บิลด์ได้อย่างมีประสิทธิภาพ
ตัวเลือก:
--project_dir- ไดเรกทอรีโปรเจ็กต์ที่จะอธิบาย หากละไว้ ระบบจะใช้ไดเรกทอรีปัจจุบัน
ตัวอย่าง: android describe --project_dir=/path/to/your/project
docs
การใช้งาน:
android docs search <query>android docs fetch <kb-url>
คำอธิบาย: คำสั่ง android docs เป็นกระบวนการ 2 ขั้นตอนสำหรับ
การเข้าถึงฐานความรู้ของ Android โดยตรงจาก CLI
ก่อนอื่น ให้ค้นหาเอกสารที่เกี่ยวข้องกับคำถามของคุณโดยใช้คำสั่ง search
ผลการค้นหาจะมี URL พิเศษที่ขึ้นต้นด้วย kb://
ซึ่งคุณสามารถใช้กับคำสั่ง fetch เพื่อแสดงผลคำสั่งเอกสารประกอบ
ไปยังเทอร์มินัล
ตัวอย่าง
android docs search 'How do I improve my app performance?'android docs fetch kb://android/topic/performance/overview
emulator create
การใช้งาน: android emulator create [--list-profiles] [--profile=<profile-name>]
คำอธิบาย: สร้างอุปกรณ์เสมือนจริง
ตัวเลือก:
--list-profiles- แสดงรายการโปรไฟล์อุปกรณ์ที่ใช้สร้าง อุปกรณ์ได้--profile=<profile-name>- สร้างอุปกรณ์ที่มีโปรไฟล์ที่ระบุ หากละเว้นส่วนนี้ ระบบจะสร้างโปรไฟล์medium_phone
emulator list
การใช้งาน: android emulator list
คำอธิบาย: แสดงรายการอุปกรณ์เสมือนที่ใช้ได้
emulator start
การใช้งาน: android emulator start <device-name>
คำอธิบาย: เปิดอุปกรณ์เสมือนที่ระบุ
อาร์กิวเมนต์ (ต้องระบุ):
<device-name>- ชื่ออุปกรณ์ที่จะเริ่ม (เช่นmedium_phone) ใช้android emulator listเพื่อดูอุปกรณ์ที่พร้อมใช้งาน
ตัวอย่าง: android emulator start medium_phone
emulator stop
การใช้งาน: android emulator stop <device-serial-number>
คำอธิบาย: หยุดอุปกรณ์เสมือนจริงที่ระบุ
อาร์กิวเมนต์ (ต้องระบุ):
<device-serial-number>- หมายเลขซีเรียลของอุปกรณ์ที่จะหยุด
ตัวอย่าง: android emulator stop emulator-5554
info
การใช้งาน: android info
คำอธิบาย: แสดงเส้นทางไปยัง Android SDK เริ่มต้นที่ใช้ หากต้องการเปลี่ยน
Android SDK ที่ใช้ ให้ใช้ --sdk
init
การใช้งาน: android init
คำอธิบาย: ตั้งค่าสภาพแวดล้อมสำหรับเอเจนต์โดยการติดตั้งandroid-cliทักษะ
layout
การใช้งาน: android layout [--pretty] [--output] [--diff]
คำอธิบาย: แสดงเลย์เอาต์ของ UI ของแอป Android ที่ใช้งานอยู่ (เชื่อมต่อผ่านอุปกรณ์จริงหรือโปรแกรมจำลอง) ในรูปแบบ JSON
ตัวเลือก:
-p, --pretty- จัดรูปแบบเอาต์พุต JSON โดยมีการเยื้องและการขึ้นบรรทัดใหม่ เพื่อให้มนุษย์อ่านได้-o, --output- ระบุตำแหน่งไฟล์เพื่อบันทึกแผนผังเลย์เอาต์ หากไม่ได้ระบุ ระบบจะพิมพ์ JSON ไปยัง stdout โดยตรง-d, --diff- แสดงรายการเฉพาะองค์ประกอบเลย์เอาต์ที่มีการเปลี่ยนแปลงนับตั้งแต่การสแนปชอตภายในครั้งล่าสุด (ครั้งล่าสุดที่เรียกใช้เลย์เอาต์) แทนที่จะเป็นโครงสร้างเลย์เอาต์ทั้งหมด
ตัวอย่าง: android layout --output=./hierarchy.json
run
การใช้งาน: android run [--debug] [--activity=<activity-name>] [--device=<serial-number>] [--type=<param>] --apks=<apk-paths>
คำอธิบาย: ทำให้แอป Android ใช้งานได้ในอุปกรณ์ที่เชื่อมต่อหรือโปรแกรมจำลอง โดยจะไม่มีขั้นตอนการสร้างใดๆ คุณต้องระบุเส้นทางไปยังไฟล์ APK ที่ต้องการติดตั้ง
อาร์กิวเมนต์ (ต้องระบุ):
--apks- รายการที่คั่นด้วยคอมมาของเส้นทางไปยังไฟล์ APK ที่คุณต้องการติดตั้ง เส้นทางจะสัมพันธ์กับตำแหน่งที่คุณอยู่ใน ระบบไฟล์
ตัวเลือก:
--activity- ชื่อกิจกรรมที่จะเปิดเมื่อ ติดตั้ง APK แล้ว หากมีกิจกรรมหลายรายการ คุณต้องระบุ กิจกรรม 1 รายการเพื่อเปิดตัวในตอนแรก--debug- Deploys the app in debug mode. หลังจากเรียกใช้แอปในโหมดแก้ไขข้อบกพร่องแล้ว คุณต้องเชื่อมต่อโปรแกรมแก้ไขข้อบกพร่องจาก IDE เช่น Android Studio หรือเครื่องมือบรรทัดคำสั่งเพื่อเริ่มการแก้ไขข้อบกพร่อง--device- หมายเลขซีเรียลของอุปกรณ์เป้าหมายหรือโปรแกรมจำลอง จำเป็น เฉพาะในกรณีที่เชื่อมต่ออุปกรณ์หลายเครื่อง หากต้องการดูหมายเลขซีเรียลของอุปกรณ์ ให้เรียกใช้adb devices--type- ประเภทคอมโพเนนต์ที่จะเริ่มต้น ใช้ตัวเลือกนี้หากต้องการเริ่มบริการที่ทำงานอยู่เบื้องหลังโดยตรงแทนกิจกรรม UI ประเภทที่รองรับACTIVITYWATCH_FACETILECOMPLICATIONDECLARATIVE_WATCH_FACE
ตัวอย่าง
android run --apks=app/build/outputs/apk/debug/app-debug.apk- Deploy APK เดียวไปยังอุปกรณ์เริ่มต้นandroid run --apks=base.apk,density-hdpi.apk,lang-en.apk- ใช้ APK หลายรายการ กับอุปกรณ์เริ่มต้นandroid run --apks=app-debug.apk --type=SERVICE --activity=.sync.DataSyncService- ทดสอบบริการโดยไม่มีกิจกรรมandroid run --apks=app-debug.apk --device=emulator-5554- ติดตั้ง APK ในอุปกรณ์ที่เฉพาะเจาะจง
screen capture
การใช้งาน: android screen capture [--output] [--annotate]
คำอธิบาย: จับภาพหน้าจอของอุปกรณ์ที่เชื่อมต่อ
ตัวเลือก:
-o, --output- ระบุตำแหน่งไฟล์เพื่อบันทึกภาพหน้าจอ หาก ละไว้ ระบบจะพิมพ์ข้อมูล PNG ดิบไปยัง stdout โดยตรง-a, --annotate- วาดกรอบล้อมรอบที่มีป้ายกำกับรอบองค์ประกอบ UI ทั้งหมด ที่ตรวจพบในรูปภาพเพื่อใช้กับคำสั่งresolve
ตัวอย่าง: android screen capture --output=ui.png
screen resolve
การใช้งาน: android screen resolve --screenshot=<path> --string=<string>
คำอธิบาย: แปลป้ายกำกับภาพจากภาพหน้าจอที่มีคำอธิบายประกอบ ซึ่งแคปเจอร์โดยใช้ screen capture เป็นพิกัดหน้าจอจริง (x, y)
มีประโยชน์สำหรับการเขียนสคริปต์คลิกในองค์ประกอบโดยไม่ต้องคำนวณตำแหน่งด้วยตนเอง
แฟล็ก:
--screenshot- เส้นทางไปยังภาพหน้าจอที่มีคำอธิบายประกอบ--string- สตริงที่มีตัวยึดตำแหน่งอย่างน้อย 1 รายการที่สอดคล้องกับ ป้ายกำกับองค์ประกอบ UI ในรูปแบบ#<number>ส่วน#<number>จะ ถูกแทนที่ด้วยพิกัดหน้าจอ
ตัวอย่าง
หากป้ายกำกับ 5 อยู่ที่พิกัด (500, 1000) คำสั่ง
android screen resolve --screenshot=ui.png --string="input tap #5"
แสดงผลลัพธ์
input tap 500 1000
sdk install
การใช้งาน: android sdk install <package[@version]> [--beta] [--canary] [--force]
คำอธิบาย: ติดตั้งแพ็กเกจ SDK ที่ระบุ
อาร์กิวเมนต์ (ต้องระบุ):
package[@version]- รายการแพ็กเกจที่จะติดตั้งที่คั่นด้วยช่องว่าง หากไม่ได้ระบุ เวอร์ชัน ระบบจะติดตั้งแพ็กเกจเวอร์ชันล่าสุดในช่อง (โดยค่าเริ่มต้นคือช่องเสถียร)
ตัวเลือก:
--beta- รวมแพ็กเกจเบต้า--canary- รวมแพ็กเกจ Canary--force- บังคับลดเวอร์ชันเป็นเวอร์ชันเก่า
ตัวอย่าง
android sdk install platforms/android-34 build-tools/34.0.0- ติดตั้งแพ็กเกจ Android SDK Platform 34 และ SDK Built Tools 34.0.0 เวอร์ชันล่าสุดจากช่องที่เสถียรandroid sdk install platforms/android-34@2- ติดตั้งแพ็กเกจ Android SDK Platform 34 เวอร์ชัน 2android sdk install --canary system-images/android-35/google_apis/x86_6- ติดตั้งอิมเมจระบบ Android 35 เวอร์ชันล่าสุดจากช่อง Canaryandroid sdk install --force platforms/android-33@1- เปลี่ยนกลับเป็นเวอร์ชัน 1 ของแพ็กเกจ Android SDK Platform 33 จากช่องที่เสถียร
sdk list
การใช้งาน: android sdk list <package-pattern>
คำอธิบาย: แสดงรายการแพ็กเกจ SDK ที่ติดตั้งและพร้อมใช้งาน
อาร์กิวเมนต์ (ต้องระบุ):
<package-pattern>- กรองแพ็กเกจตามรูปแบบ รองรับนิพจน์ทั่วไป
ตัวเลือก:
--all- แสดงแพ็กเกจที่ติดตั้งและพร้อมใช้งานทั้งหมด--all-versions- แสดงเวอร์ชันทั้งหมดของแต่ละแพ็กเกจ--beta- รวมแพ็กเกจเบต้า--canary- รวมแพ็กเกจ Canary
sdk remove
การใช้งาน: android sdk remove <package-name>
คำอธิบาย: นำแพ็กเกจออกจาก SDK
อาร์กิวเมนต์ (ต้องระบุ):
<package-name>- ชื่อของแพ็กเกจที่จะนำออก
ตัวอย่าง: android sdk remove build-tools/36.1.0
sdk update
การใช้งาน: android sdk update [--beta] [--canary] [<package-name>]
คำอธิบาย: อัปเดตแพ็กเกจอย่างน้อย 1 รายการหรือทั้งหมดเป็นเวอร์ชันล่าสุดใน แชแนล (โดยค่าเริ่มต้นคือแชแนลที่เสถียร) หากคุณไม่ระบุแพ็กเกจ ระบบจะอัปเดตแพ็กเกจทั้งหมด
ตัวเลือก:
<package-name>- ชื่อของแพ็กเกจที่จะอัปเดต--beta- รวมแพ็กเกจเบต้า--canary- รวมแพ็กเกจ Canary--force- บังคับลดเวอร์ชันเป็นเวอร์ชันเก่า
ตัวอย่าง
android sdk update- ตรวจสอบและติดตั้งการอัปเดตทุกอย่างใน SDKandroid sdk update build-tools/34.0.0- อัปเดตแพ็กเกจเครื่องมือสร้าง Android SDK 34.0.0 เป็นเวอร์ชันล่าสุดในช่องทางที่เสถียรandroid sdk update --canary platforms/android-35- อัปเดตแพ็กเกจ Android SDK Platforms 35 เป็นเวอร์ชันล่าสุดในแชแนล Canary
skills add
ทักษะ Android เป็นคำสั่งพิเศษที่ออกแบบมาเพื่อช่วยให้ตัวแทนเข้าใจและ ปฏิบัติตามรูปแบบที่เฉพาะเจาะจงได้ดียิ่งขึ้นตามแนวทางปฏิบัติแนะนำและ คำแนะนำในการพัฒนา Android ดูข้อมูลเพิ่มเติมได้ที่ ข้อมูลเบื้องต้นเกี่ยวกับทักษะ Android
การใช้งาน: android skills add [--all] [--agent=<agent-name>] [--skill=<skill-name>]
คำอธิบาย: ติดตั้งทักษะ Android ลงในไดเรกทอรีทักษะสำหรับเอเจนต์ทั้งหมดที่ตรวจพบ
หากคุณไม่มีไดเรกทอรีตัวแทนอยู่แล้วและไม่ได้
ระบุตัวแทนใดตัวแทนหนึ่ง ระบบจะติดตั้งทักษะสำหรับ Gemini และ
Antigravity ที่ ~/.gemini/antigravity/skills หากคุณติดตั้งทักษะ Android
ไว้แล้ว skills add จะอัปเดตทักษะเป็นเวอร์ชันล่าสุด
ตัวเลือก:
--all- ติดตั้งหรืออัปเดตทักษะ Android ทั้งหมดพร้อมกัน หากไม่ระบุ (และไม่ได้ระบุ--skill) ระบบจะติดตั้งเฉพาะทักษะandroid-cli--agent- รายการที่คั่นด้วยคอมมาของเอเจนต์ที่จะติดตั้งหรืออัปเดตทักษะให้ หากไม่ระบุ ระบบจะติดตั้งทักษะสำหรับเอเจนต์ที่ตรวจพบทั้งหมด--skill- ชื่อทักษะที่คุณต้องการติดตั้งหรืออัปเดต หากไม่ระบุ (และไม่ได้ระบุ--all) ระบบจะติดตั้งหรืออัปเดตเฉพาะทักษะandroid-cli
ตัวอย่าง: android skills add --agent='gemini' edge-to-edge
skills find
การใช้งาน: android skills find <string>
คำอธิบาย: ค้นหาทักษะที่ตรงกับสตริงที่ระบุ
อาร์กิวเมนต์ (ต้องระบุ):
string- สตริงที่ตรงกับคำอธิบายทักษะ
ตัวอย่าง: android skills find 'performance'
skills list
การใช้งาน: android skills list [--long]
คำอธิบาย: แสดงรายการทักษะที่มี
ตัวเลือก:
--long- แสดงข้อมูลเพิ่มเติมสำหรับทักษะแต่ละอย่าง รวมถึง คำอธิบายของทักษะและเอเจนต์ที่ติดตั้งทักษะนั้นแล้ว
skills remove
การใช้งาน: android skills remove [--agent] --skill=<skill-name>
คำอธิบาย: นำทักษะออก หากไม่ได้ระบุเอเจนต์ใดๆ ระบบจะนำ ทักษะออกสำหรับเอเจนต์ทั้งหมด
อาร์กิวเมนต์ (ต้องระบุ):
--skill- ชื่อของทักษะที่จะนำออก
ตัวเลือก:
--agent- รายการตัวแทนที่คั่นด้วยคอมมาเพื่อนำทักษะออก หาก ไม่ระบุ ระบบจะนำทักษะออกสำหรับตัวแทนทั้งหมด
ตัวอย่าง: android skills remove --agent='gemini' --skill=edge-to-edge
studio check
studioคำสั่งช่วยให้คุณหรือ AI Agent โต้ตอบกับอินสแตนซ์ที่ใช้งานอยู่ของ Android Studio ได้ การเชื่อมต่อกับอินสแตนซ์ที่ทำงานอยู่จะช่วยให้คุณ
ใช้ความสามารถของ IDE เพื่อวิเคราะห์ไฟล์ ค้นหาการประกาศสัญลักษณ์และการ
ใช้งาน แสดงตัวอย่าง Compose และค้นหาเวอร์ชันของ Dependency ได้
การใช้งาน: android studio check
คำอธิบาย: ตรวจสอบสถานะของอินสแตนซ์ Android Studio ที่กำลังทำงานและแสดงรายการ โปรเจ็กต์ที่เปิดอยู่ เรียกใช้คำสั่งนี้ก่อนเพื่อยืนยันการเชื่อมต่อระหว่าง CLI กับ IDE และเพื่อเลือก PID และโปรเจ็กต์ที่ต้องการเชื่อมต่อ หากมีหลายรายการ
ตัวอย่างเอาต์พุต:
หากเชื่อมต่อแล้ว เอาต์พุตจะแสดง PID ของอินสแตนซ์ Android Studio ที่กำลังทำงาน เวอร์ชัน และสถานะของโปรเจ็กต์ที่เปิดอยู่ ดังนี้
pid: 32942
version: Android Studio Quail
Projects:
READY MyApplication /Users/username/AndroidStudioProjects/MyApplication
studio analyze-file
การใช้งาน: android studio analyze-file [--pid=<pid>] [--project=<project>] <path>
คำอธิบาย: วิเคราะห์ไฟล์ใน Android Studio เพื่อหาข้อผิดพลาด คำเตือน และ Lint โดยใช้เครื่องมือตรวจสอบในตัวของ IDE
อาร์กิวเมนต์ (ต้องระบุ):
<path>- เส้นทางของไฟล์ Kotlin หรือ Java ที่จะวิเคราะห์
ตัวเลือก:
--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากเรียกใช้คำสั่งanalyze-fileจาก ภายในไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio analyze-file \
--project=MyApplication \
/Users/username/AndroidStudioProjects/MyApplication/app/src/main/java/com/example/myapp/MainActivity.kt
studio find-declaration
การใช้งาน: android studio find-declaration [--short] [--context-file=<path>] [--pid=<pid>] [--project=<project>] <symbol>
คำอธิบาย: ค้นหาตำแหน่งการประกาศที่แน่นอนของสัญลักษณ์ (คลาส เมธอด ตัวแปร ฟิลด์ ค่าคงที่ หรือทรัพยากร Android) ในโปรเจ็กต์โดยใช้การแก้ปัญหาเชิงความหมาย
อาร์กิวเมนต์ (ต้องระบุ):
<symbol>- ชื่อของสัญลักษณ์โค้ดที่จะค้นหาการประกาศ
ตัวเลือก:
--context-file=<path>- เส้นทางที่ไม่บังคับไปยังไฟล์ที่มีการอ้างอิงถึง สัญลักษณ์ การระบุไฟล์บริบทจะช่วยแก้ไขสัญลักษณ์ที่คลุมเครือหรือมีข้อมูลมากเกินไป โดยการระบุการนำเข้าและขอบเขต--short- ลดความซับซ้อนของเอาต์พุตให้แสดงเฉพาะตำแหน่งไฟล์และบรรทัด ที่ตรงกัน--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากเรียกใช้คำสั่งfind-declarationจาก ภายในไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio find-declaration --short HotelDetailScreen
studio find-usages
การใช้งาน: android studio find-usages [--short] [--pid=<pid>] [--project=<project>] <symbol>
คำอธิบาย: ค้นหาการอ้างอิงและการใช้งานสัญลักษณ์ทั้งหมดในโปรเจ็กต์ ทั้งหมดโดยใช้การวิเคราะห์เชิงความหมาย
อาร์กิวเมนต์ (ต้องระบุ):
<symbol>- ชื่อของสัญลักษณ์ที่จะค้นหาการใช้งาน
ตัวเลือก:
--short- ลดความซับซ้อนของเอาต์พุตให้แสดงเฉพาะตำแหน่งไฟล์ที่ตรงกัน--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากคุณเรียกใช้คำสั่งนี้จากภายใน ไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio find-usages --short HotelDetailScreen
studio open-file
การใช้งาน: android studio open-file [--pid=<pid>] [--project=<project>] <path>
คำอธิบาย: เปิดไฟล์ในหน้าต่างโปรแกรมแก้ไขที่ใช้งานอยู่ของ Android Studio โดยตรง
อาร์กิวเมนต์ (ต้องระบุ):
<path>- เส้นทางของไฟล์ที่จะเปิด ระบุได้โดยสัมพันธ์กับ ไดเรกทอรีรูทของโปรเจ็กต์ หรือเป็นเส้นทางสัมบูรณ์
ตัวเลือก:
--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากเรียกใช้คำสั่งopen-fileจากภายในไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio open-file app/src/main/java/com/example/myapp/ui/DetailScreen.kt
studio render-compose-preview
การใช้งาน: android studio render-compose-preview [--print-semantics] [--output-image-file=<filename>] [--pid=<pid>] [--project=<project>] <path> <composable>
คำอธิบาย: แสดงตัวอย่าง UI ของ Jetpack Compose และจะแสดงผล แผนผัง Semantics ของเลย์เอาต์หรือไม่ก็ได้ ซึ่งมีประโยชน์สำหรับการทดสอบภาพหรือการเปิดใช้เอเจนต์ AI เพื่อทำงานกับเลย์เอาต์ของ UI
อาร์กิวเมนต์ (ต้องระบุ):
<path>- เส้นทางไปยังไฟล์ Kotlin ที่มีตัวอย่าง Compose<composable>- ชื่อของฟังก์ชันตัวอย่างที่ประกอบกันได้ (ทำเครื่องหมายด้วย@Preview)
ตัวเลือก:
--output-image-file=<filename>- ระบุชื่อไฟล์ที่จะเขียนรูปภาพ PNG ที่เรนเดอร์แล้ว หากไม่ระบุ ระบบจะสร้างไฟล์ชั่วคราว--print-semantics- หากเป็นจริง จะพิมพ์แผนผังความหมายด้านการช่วยเหลือพิเศษของตัวอย่าง Compose ที่แสดงผลในรูปแบบ JSON ซึ่งจะช่วยให้ตัวแทนแยกวิเคราะห์ โครงสร้างและองค์ประกอบแบบโต้ตอบของ UI ได้--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากเรียกใช้คำสั่งrender-compose-previewจากภายในไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio render-compose-preview \
--output-image-file=preview_hotel.png \
--print-semantics \
app/src/main/java/com/example/myapp/ui/DetailScreen.kt \
HotelDetailScreenPreview
studio version-lookup
การใช้งาน: android studio version-lookup [--pid=<pid>] [--project=<project>] <artifacts...>
คำอธิบาย: ค้นหาเวอร์ชันล่าสุดของทรัพยากร Dependency ทั่วไป แพลตฟอร์ม Android และเครื่องมือ SDK ในที่เก็บ เช่น Google Maven ซึ่งเป็นทางเลือกแบบเป็นโปรแกรมแทนการตรวจสอบเวอร์ชันของทรัพยากร Dependency ด้วยตนเอง
อาร์กิวเมนต์ (ต้องระบุ):
<artifacts...>- รายการตัวระบุที่คั่นด้วยช่องว่าง คุณสามารถค้นหา อาร์ติแฟกต์หลายรายการในคำสั่งเดียว ตัวระบุที่รองรับมีดังนี้- ไลบรารี Maven: สัญกรณ์
groupId:artifactId(เช่นandroidx.window:window) - ปลั๊กอิน Gradle: รหัสปลั๊กอิน (เช่น
com.android.application) - คีย์เวิร์ด
gradle(เครื่องมือสร้าง Gradle)studio(Android Studio)agp(ปลั๊กอิน Android Gradle)ndk(Android NDK)sdk(Android SDK)emulator(โปรแกรมจำลอง Android)adb(Android Debug Bridge)compose(BOM ของ Jetpack Compose)kotlin(รันไทม์และคอมไพเลอร์ Kotlin)android(เวอร์ชันระบบปฏิบัติการ Android)platform-tools(Android SDK Platform-Tools)cmdline-tools(เครื่องมือบรรทัดคำสั่งของ Android SDK)build-tools(เครื่องมือสร้าง Android SDK)
- ไลบรารี Maven: สัญกรณ์
ตัวเลือก:
--pid=<pid>- PID ของอินสแตนซ์ Android Studio ที่เฉพาะเจาะจงเพื่อเชื่อมต่อ หากมีหลายอินสแตนซ์--project=<project>- ชื่อของโปรเจ็กต์ที่เปิดใน Android Studio เพื่อ ค้นหา หากมีหลายโปรเจ็กต์ หากเรียกใช้คำสั่งversion-lookupจาก ภายในไดเรกทอรีโปรเจ็กต์ ระบบจะใช้โปรเจ็กต์นั้นโดยค่าเริ่มต้น
ตัวอย่าง
android studio version-lookup \
androidx.compose.ui:ui \
com.android.application \
agp \
kotlin
update
การใช้งาน: android update
คำอธิบาย: อัปเดต Android CLI
-V, --version
คำอธิบาย: แสดงเวอร์ชันปัจจุบันของ Android CLI