Android सीएलआई, एक कमांड-लाइन इंटरफ़ेस है. इसकी मदद से, अपनी पसंद के किसी भी टूल का इस्तेमाल करके, Android के लिए आसानी से और असरदार तरीके से ऐप्लिकेशन बनाए जा सकते हैं. यह एजेंट-फ़र्स्ट वर्कफ़्लो के लिए, डेवलपमेंट की मुख्य क्षमताओं को स्टैंडर्ड बनाता है. साथ ही, आधिकारिक टूल, कौशल, और जानकारी के लिए एंट्री पॉइंट उपलब्ध कराता है, ताकि आप ज़्यादा असरदार तरीके से डेवलपमेंट कर सकें. यह Android डेवलपमेंट के लिए, CI, रखरखाव, और स्क्रिप्ट की मदद से होने वाले किसी भी अन्य ऑटोमेशन को भी बेहतर बना सकता है.
उदाहरण के लिए, कोई एजेंट या स्क्रिप्ट, सीएलआई का इस्तेमाल करके ये काम कर सकती है:
- एनवायरमेंट के सेटअप को ऑटोमेट करना
- टेंप्लेट से नए प्रोजेक्ट बनाना
- अपने टर्मिनल से सीधे वर्चुअल डिवाइसों को मैनेज करना
- गतिविधि की मदद से अपने ऐप्लिकेशन की जांच करना
Android CLI, आपके एजेंट को Android की सुविधाओं और Android के खास नॉलेज बेस का ऐक्सेस भी देता है. इससे यह पक्का करने में मदद मिलती है कि आपके प्रोजेक्ट में, Android के सुझाए गए पैटर्न और सबसे सही तरीके लागू किए गए हों.
Android सीएलआई इंस्टॉल करना
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. - स्टैक ट्रेस और अपवाद वाले मैसेज. इनमें पहचान छिपाने वाली जानकारी को इकट्ठा करने से पहले ही हटा दिया जाता है, ताकि निजता को सुरक्षित रखा जा सके.
यहां ऐसे डेटा के कुछ उदाहरण दिए गए हैं जिसे हम इकट्ठा नहीं करते:
- जब कोई कमांड चलाई जाती है, तब हम सीएलआई के जवाबों को इकट्ठा नहीं करते.
- हम उपयोगकर्ता के बनाए गए इनपुट या सीएलआई को पास किए गए बाहरी आइडेंटिफ़ायर इकट्ठा नहीं करते. जैसे, Maven के खास कोऑर्डिनेट, लोकल फ़ाइल पाथ या कस्टम प्रोजेक्ट के नाम. उदाहरण के लिए, अगर
android create --name=com.company.internal.appकमांड को एक्ज़ीक्यूट किया जाता है, तो हम यह रिकॉर्ड करते हैं किandroid create --name=com.company.internal.appको--nameआर्ग्युमेंट का इस्तेमाल करके एक्ज़ीक्यूट किया गया था. हालांकि, हमcom.company.internal.appवैल्यू को सेव नहीं करते हैं.android create
सुझाव/राय देना या शिकायत करना और समस्याएं
अगर आपको कोई समस्या आती है या आपको कोई सुझाव/राय देनी है या शिकायत करनी है, तो बग की शिकायत करें.
पहले से मालूम समस्याएं
- फ़िलहाल, Windows के लिए
android emulatorकमांड बंद है. - फ़िलहाल, Windows PowerShell से Android CLI डाउनलोड करने की सुविधा उपलब्ध नहीं है.
Android सीएलआई को कॉन्फ़िगर करना
.androidrc फ़ाइल बनाएं, ताकि Android CLI को हर बार चालू करने पर फ़्लैग और विकल्प अपने-आप लागू हो जाएं. अपने ऑपरेटिंग सिस्टम के हिसाब से, फ़ाइल को यहां सेव करें:
- macOS और Linux:
~/.androidrc - Windows:
%USERPROFILE%\.androidrc
उन फ़्लैग को जोड़ें जिन्हें आपको फ़ाइल पर अपने-आप लागू करना है. हर फ़्लैग को अलग-अलग लाइन में जोड़ें.
उदाहरण के लिए, Android CLI को हर बार डिफ़ॉल्ट रूप से किसी खास Android SDK का इस्तेमाल करने के लिए, अपनी फ़ाइल में --sdk फ़्लैग जोड़ें:
--sdk=<path-to-sdk>
ग्लोबल ऑप्शन
ये ऐसे फ़्लैग हैं जिनका इस्तेमाल करना ज़रूरी नहीं है. इन्हें Android CLI की अन्य कमांड के साथ इस्तेमाल किया जा सकता है.
-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 सीएलआई के सभी निर्देशों की सूची दी गई है. साथ ही, यह भी बताया गया है कि ये निर्देश क्या करते हैं.
इन सभी निर्देशों से पहले 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 कमांड का इस्तेमाल करके, सीधे सीएलआई से Android के नॉलेज बेस को ऐक्सेस किया जा सकता है. इसके लिए, दो चरणों वाली प्रोसेस पूरी करनी होती है.
सबसे पहले, अपनी क्वेरी से जुड़े दस्तावेज़ को search
कमांड का इस्तेमाल करके खोजें. खोज के नतीजों में, 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]
ब्यौरा: यह फ़ंक्शन, चालू 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 इंस्टॉल होने के बाद लॉन्च होने वाली ऐक्टिविटी का नाम. अगर एक से ज़्यादा गतिविधियां हैं, तो आपको शुरुआत में लॉन्च करने के लिए एक गतिविधि चुननी होगी.--debug- इससे ऐप्लिकेशन को डीबग मोड में डिप्लॉय किया जाता है. ऐप्लिकेशन को डीबग मोड में चलाने के बाद, आपको डीबग करने के लिए, किसी आईडीई (जैसे, Android Studio) या कमांड-लाइन टूल से डीबगर को कनेक्ट करना होगा.--device- टारगेट डिवाइस या एम्युलेटर का सीरियल नंबर. इसकी ज़रूरत सिर्फ़ तब होती है, जब एक से ज़्यादा डिवाइस कनेक्ट हों. डिवाइस के सीरियल नंबर ढूंढने के लिए,adb devicesचलाएं.--type- शुरू करने के लिए कॉम्पोनेंट का टाइप. अगर आपको यूज़र इंटरफ़ेस (यूआई) गतिविधि के बजाय सीधे तौर पर बैकग्राउंड सेवा शुरू करनी है, तो इसका इस्तेमाल करें. इन टाइप का इस्तेमाल किया जा सकता है:ACTIVITYWATCH_FACETILECOMPLICATIONDECLARATIVE_WATCH_FACE
उदाहरण:
android run --apks=app/build/outputs/apk/debug/app-debug.apk- यह डिफ़ॉल्ट डिवाइस पर एक 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- इससे स्क्रीनशॉट सेव करने के लिए, फ़ाइल की जगह तय की जाती है. अगर इसे शामिल नहीं किया जाता है, तो रॉ पीएनजी डेटा को सीधे तौर पर stdout पर प्रिंट किया जाएगा.-a, --annotate- यह इमेज में मौजूद सभी यूज़र इंटरफ़ेस (यूआई) एलिमेंट के चारों ओर लेबल किए गए बाउंडिंग बॉक्स बनाता है. इसका इस्तेमालresolveकमांड के साथ किया जाता है.
उदाहरण: android screen capture --output=ui.png
screen resolve
इस्तेमाल: android screen resolve --screenshot=<path> --string=<string>
ब्यौरा: यह फ़ंक्शन, एनोटेट किए गए स्क्रीनशॉट से विज़ुअल लेबल को स्क्रीन के असली कोऑर्डिनेट (x, y) में बदलता है. यह स्क्रीनशॉट, screen capture का इस्तेमाल करके कैप्चर किया जाता है.
यह सुविधा, एलिमेंट पर क्लिक करने के लिए स्क्रिप्ट लिखने में मददगार होती है. इससे आपको उनकी पोज़िशन का हिसाब मैन्युअल तरीके से नहीं लगाना पड़ता.
फ़्लैग:
--screenshot- एनोटेट किए गए स्क्रीनशॉट का पाथ.--string- यह एक ऐसी स्ट्रिंग है जिसमें कम से कम एक प्लेसहोल्डर शामिल होता है. यह प्लेसहोल्डर, यूज़र इंटरफ़ेस (यूआई) एलिमेंट के लेबल से मेल खाता है. इसका फ़ॉर्मैट#<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]
ब्यौरा: इस विकल्प का इस्तेमाल करके, एसडीके के चुने गए पैकेज इंस्टॉल किए जाते हैं.
आर्ग्युमेंट (ज़रूरी):
package[@version]- इंस्टॉल किए जाने वाले पैकेज की स्पेस से अलग की गई सूची. अगर वर्शन के बारे में नहीं बताया गया है, तो चैनल में मौजूद पैकेज का नया वर्शन इंस्टॉल किया जाता है. डिफ़ॉल्ट रूप से, यह स्टेबल चैनल होता है.
विकल्प:
--beta- बीटा पैकेज शामिल करें.--canary- इसमें कैनरी पैकेज शामिल होते हैं.--force- किसी पुराने वर्शन पर वापस जाने के लिए मजबूर करना.
उदाहरण:
android sdk install platforms/android-34 build-tools/34.0.0- स्टेबल चैनल से, Android SDK प्लैटफ़ॉर्म 34 और एसडीके बिल्ट टूल 34.0.0 पैकेज के नए वर्शन इंस्टॉल करें.android sdk install platforms/android-34@2- Android SDK प्लैटफ़ॉर्म 34 पैकेज का दूसरा वर्शन इंस्टॉल करें.android sdk install --canary system-images/android-35/google_apis/x86_6- कैनरी चैनल से, Android 35 सिस्टम इमेज का नया वर्शन इंस्टॉल करें.android sdk install --force platforms/android-33@1- स्टेबल चैनल से, Android SDK प्लैटफ़ॉर्म 33 पैकेज के वर्शन 1 पर वापस जाएं.
sdk list
इस्तेमाल: android sdk list <package-pattern>
ब्यौरा: इंस्टॉल किए गए और उपलब्ध एसडीके पैकेज की सूची बनाएं.
आर्ग्युमेंट (ज़रूरी):
<package-pattern>- पैटर्न के हिसाब से पैकेज फ़िल्टर करें. रेगुलर एक्सप्रेशन के साथ काम करता है.
विकल्प:
--all- इंस्टॉल किए गए और उपलब्ध सभी पैकेज दिखाएं.--all-versions- हर पैकेज के सभी वर्शन दिखाएं.--beta- बीटा पैकेज शामिल करें.--canary- इसमें कैनरी पैकेज शामिल होते हैं.
sdk remove
इस्तेमाल: android sdk remove <package-name>
ब्यौरा: एसडीके से पैकेज हटाता है.
आर्ग्युमेंट (ज़रूरी):
<package-name>- हटाने के लिए पैकेज का नाम.
उदाहरण: android sdk remove build-tools/36.1.0
sdk update
इस्तेमाल: android sdk update [--beta] [--canary] [<package-name>]
ब्यौरा: चैनल में मौजूद एक या सभी पैकेज को नए वर्शन में अपडेट करें. डिफ़ॉल्ट रूप से, यह स्टेबल चैनल होता है. अगर आपने कोई पैकेज नहीं चुना है, तो सभी पैकेज अपडेट हो जाएंगे.
विकल्प:
<package-name>- अपडेट किए जाने वाले पैकेज का नाम.--beta- बीटा पैकेज शामिल करें.--canary- इसमें कैनरी पैकेज शामिल होते हैं.--force- किसी पुराने वर्शन पर वापस जाने के लिए मजबूर करना.
उदाहरण:
android sdk update- अपने एसडीके में मौजूद सभी चीज़ों के लिए अपडेट की जांच करें और उन्हें इंस्टॉल करें.android sdk update build-tools/34.0.0- Android SDK Build Tools 34.0.0 पैकेज को स्टेबल चैनल में मौजूद नए वर्शन पर अपडेट करें.android sdk update --canary platforms/android-35- Android SDK Platforms 35 पैकेज को कैनरी चैनल में नए वर्शन पर अपडेट करें.
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 कमांड की मदद से, आपको या आपके एआई एजेंट को Android Studio के चालू इंस्टेंस के साथ इंटरैक्ट करने की सुविधा मिलती है. चालू इंस्टेंस से कनेक्ट करके, फ़ाइलों का विश्लेषण करने, सिंबल के एलान और इस्तेमाल का पता लगाने, Compose की झलकियां रेंडर करने, और डिपेंडेंसी के वर्शन देखने के लिए, IDE की सुविधाओं का इस्तेमाल किया जा सकता है.
इस्तेमाल: android studio check
जानकारी: इससे Android Studio के चालू इंस्टेंस की स्थिति की जांच की जाती है. साथ ही, खुले हुए प्रोजेक्ट की सूची बनाई जाती है. सीएलआई और आईडीई के बीच कनेक्शन की पुष्टि करने के लिए, सबसे पहले यह कमांड चलाएं. साथ ही, अगर एक से ज़्यादा पीआईडी और प्रोजेक्ट हैं, तो उस पीआईडी और प्रोजेक्ट को चुनें जिससे आपको कनेक्ट करना है.
आउटपुट का उदाहरण:
कनेक्ट होने पर, आउटपुट में 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 में किसी फ़ाइल का विश्लेषण करता है, ताकि गड़बड़ियों, चेतावनियों, और लिंट का पता लगाया जा सके. इसके लिए, IDE के बिल्ट-इन इंस्पेक्शन इंजन का इस्तेमाल किया जाता है.
आर्ग्युमेंट (ज़रूरी):
<path>- विश्लेषण के लिए Kotlin या Java फ़ाइल का पाथ.
विकल्प:
--pid=<pid>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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>
जानकारी: यह फ़ंक्शन, Jetpack Compose के यूज़र इंटरफ़ेस (यूआई) की झलक दिखाता है. साथ ही, यह लेआउट के सिमैंटिक ट्री को भी दिखाता है. हालांकि, ऐसा करना ज़रूरी नहीं है. यह विज़ुअल टेस्टिंग के लिए या एआई एजेंट को यूज़र इंटरफ़ेस (यूआई) लेआउट के साथ काम करने की सुविधा चालू करने के लिए फ़ायदेमंद है.
आर्ग्युमेंट (ज़रूरी):
<path>- Compose की झलक दिखाने वाली Kotlin फ़ाइल का पाथ.<composable>- कंपोज़ेबल प्रीव्यू फ़ंक्शन का नाम (@Previewके साथ मार्क किया गया).
विकल्प:
--output-image-file=<filename>- इससे उस फ़ाइल का नाम तय किया जाता है जिसमें रेंडर की गई PNG इमेज सेव की जाएगी. अगर इसे शामिल नहीं किया जाता है, तो कुछ समय के लिए फ़ाइल बन जाती है.--print-semantics- अगर यह सही है, तो रेंडर की गई Compose की झलक के ऐक्सेसिबिलिटी सिमैंटिक्स ट्री को JSON फ़ॉर्मैट में प्रिंट करता है. इससे एजेंट, यूज़र इंटरफ़ेस (यूआई) के स्ट्रक्चर और इंटरैक्टिव एलिमेंट को पार्स कर पाते हैं.--pid=<pid>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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...>
ब्यौरा: यह Google Maven जैसी रिपॉज़िटरी में, सामान्य डिपेंडेंसी, Android प्लैटफ़ॉर्म, और एसडीके टूल के सबसे नए उपलब्ध वर्शन ढूंढता है. इससे, मैन्युअल तरीके से डिपेंडेंसी के वर्शन की जांच करने के बजाय, प्रोग्राम के हिसाब से जांच करने का विकल्प मिलता है.
आर्ग्युमेंट (ज़रूरी):
<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 Emulator)adb(Android डीबग ब्रिज)compose(Jetpack Compose BOM)kotlin(Kotlin रनटाइम और कंपाइलर)android(Android OS के वर्शन)platform-tools(Android SDK Platform-Tools)cmdline-tools(Android SDK के कमांड-लाइन टूल)build-tools(Android SDK Build-Tools)
- Maven लाइब्रेरी:
विकल्प:
--pid=<pid>- अगर एक से ज़्यादा Android Studio इंस्टेंस मौजूद हैं, तो कनेक्ट करने के लिए किसी खास 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 सीएलआई को अपडेट करें.
-V, --version
ब्यौरा: Android CLI का मौजूदा वर्शन दिखाएं.