एनवायरमेंट वैरिएबल

Android Studio और कमांड-लाइन टूल एनवायरमेंट वैरिएबल. सेट करने के लिए सबसे उपयोगी एनवायरमेंट वैरिएबल में से एक है ANDROID_HOME, जिसे कई टूल Android SDK इंस्टॉलेशन डायरेक्ट्री का पता लगाएं. एक्ज़ीक्यूटेबल में पूरा पाथ शामिल किए बिना, कमांड लाइन से टूल चलाने के लिए, अपना निर्देश सेट करो शामिल करने के लिए, सर्च पाथ एनवायरमेंट वैरिएबल ANDROID_HOME/tools, ANDROID_HOME/tools/bin, और ANDROID_HOME/platform-tools.

एनवायरमेंट वैरिएबल सेट करने का तरीका

नीचे दिए गए उदाहरणों में, टर्मिनल विंडो और उसमें एनवायरमेंट वैरिएबल को सेट करने का तरीका बताया गया है अलग-अलग ऑपरेटिंग सिस्टम के लिए शेल स्क्रिप्ट बनाई जाती है. टर्मिनल विंडो में वैरिएबल सेटिंग आखिर में सेट की जाएंगी जब तक कि विंडो खुली रहती है. macOS और Linux पर, हर बार नया शेल शुरू होने पर, वह अलग-अलग होता है सेटिंग सेट हो गई हैं शेल में इनिशलाइज़ेशन स्क्रिप्ट. Windows पर, वैरिएबल सेटिंग को डिफ़ॉल्ट रूप से सेट किया जा सकता है.

Windows: टर्मिनल विंडो में, यह लिखें:

set HTTP_PROXY=myserver:1981

इसके अलावा, उसे Windows यूज़र इंटरफ़ेस (यूआई) से भी जोड़ा जा सकता है. Windows के आपके वर्शन के दस्तावेज़ देखें देखें.

macOS और Linux: एनवायरमेंट वैरिएबल को सेट करने का सटीक तरीका, इन पर निर्भर करता है आप किस शेल का उपयोग कर रहे हैं. यह तय करने के लिए कि कौनसा शेल टाइप चल रहा है, यह टाइप करें:

echo $0

आइटम को ऐसे शेल ग्नू बैश या Zsh, वैरिएबल सेट करने के लिए इनका इस्तेमाल किया जाता है सिंटैक्स:

export VARIABLE_NAME=<new-value>

दूसरे शेलों में, जैसे कि TCSH, वैरिएबल का इस्तेमाल करके सेट किए जाते हैं: निम्न सिंटैक्स:

setenv VARIABLE_NAME <new-value>

ये कमांड, शेल शुरू करने वाली स्क्रिप्ट में जोड़ी जा सकती हैं, ताकि हर बार वैरिएबल सेट किए जा सकें नया शेल इंस्टेंस चलाया जाता है.

शेल शुरू करने की स्क्रिप्ट की जगह, इस्तेमाल किए जा रहे शेल के हिसाब से तय होती है. ग्नू बैश के लिए, लोकेशन ~/.bash_profile हो सकती है. इसके लिए Zsh, जगह की जानकारी ~/.zprofile हो सकती है. टीसीएसएच के लिए, कारोबार की जगह की जानकारी ~/.cshrc. इस्तेमाल की जानकारी शेल का दस्तावेज़ है जिसका उपयोग आप सुनिश्चित करने के लिए कर रहे हैं.

टूल की जगह की जानकारी शामिल करने के लिए, PATH एनवायरमेंट वैरिएबल को भी अपडेट किया जा सकता है.

Gनू Bash या Zsh के लिए:

export ANDROID_HOME=~/Library/Android/sdk
export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
  

और टीसीएसएच के लिए:

setenv ANDROID_HOME ~/Library/Android/sdk
setenv PATH $PATH\:$ANDROID_HOME/tools\:$ANDROID_HOME/tools/bin\:$ANDROID_HOME/platform-tools
  

वैरिएबल का रेफ़रंस

नीचे दी गई टेबल में, Android SDK टूल के लिए आम तौर पर इस्तेमाल किए जाने वाले एनवायरमेंट वैरिएबल के बारे में बताया गया है.

टेबल 1. एनवायरमेंट वैरिएबल

Android SDK टूल के एनवायरमेंट वैरिएबल
ANDROID_HOME SDK टूल की इंस्टॉलेशन डायरेक्ट्री का पाथ सेट करता है. सेट हो जाने पर, आम तौर पर वैल्यू नहीं बदलती है और एक ही मशीन पर कई उपयोगकर्ता इसे शेयर कर सकते हैं. ANDROID_SDK_ROOT, जो SDK टूल इंस्टॉल करने की डायरेक्ट्री के बारे में भी बताता है. के इस्तेमाल पर रोक लगा दी गई है. अगर इसका इस्तेमाल जारी रखा जाता है, तो Android Studio और 'Android Gradle प्लग इन' जांच लें कि पुराने और नए वैरिएबल एक-दूसरे से मेल खाते हैं या नहीं.
ANDROID_USER_HOME यह टूल, Android SDK के हिस्से के तौर पर काम करने वाले टूल के लिए, उपयोगकर्ता की प्राथमिकताओं की डायरेक्ट्री का पाथ सेट करता है. डिफ़ॉल्ट तौर पर, यह $HOME/.android/ पर सेट होती है.

Android Studio 4.3 और उससे पहले के वर्शन जैसे कुछ पुराने टूल ANDROID_USER_HOME. उन पुराने टूल के लिए उपयोगकर्ता की प्राथमिकताओं की जगह बदलने के लिए, ANDROID_SDK_HOME को उस पैरंट डायरेक्ट्री में सेव करें जिसे आपको जोड़ना है इसके तहत .android डायरेक्ट्री बनाई जाएगी.

REPO_OS_OVERRIDE इस वैरिएबल को windows, macosx या linux पर सेट करें, जब आप sdkmanager का इस्तेमाल करते/करती हैं का इस्तेमाल करें.
Android Studio के कॉन्फ़िगरेशन एनवायरमेंट वैरिएबल
Android Studio के कॉन्फ़िगरेशन वैरिएबल में, ऐसी सेटिंग होती हैं जो 'Android Studio' के कॉन्फ़िगरेशन वैरिएबल में कॉन्फ़िगरेशन फ़ाइलें और JDK शामिल हैं. शुरुआत में, Android Studio इन वैरिएबल की जांच करता है सेटिंग के लिए. ज़्यादा जानकारी के लिए, यह देखें Android Studio कॉन्फ़िगर करना.
STUDIO_VM_OPTIONS studio.vmoptions फ़ाइल की लोकेशन सेट करता है. इस फ़ाइल में ऐसी सेटिंग हैं जो Java हॉटस्पॉट की परफ़ॉर्मेंस पर असर डालती हैं वर्चुअल मशीन. इस फ़ाइल को Android Studio से भी ऐक्सेस किया जा सकता है. यहां जाएं: वीएम के विकल्पों को अपनी पसंद के मुताबिक बनाएं.
STUDIO_PROPERTIES इससे idea.properties की जगह की जानकारी सेट की जाती है फ़ाइल से लिए जाते हैं. इस फ़ाइल से, आपको Android Studio IDE प्रॉपर्टी को पसंद के मुताबिक बनाने की सुविधा मिलती है. जैसे, उपयोगकर्ता के इंस्टॉल किए गए प्लगिन और IDE के साथ काम करने वाली फ़ाइल का ज़्यादा से ज़्यादा साइज़. यहां जाएं: अपनी IDE प्रॉपर्टी को पसंद के मुताबिक बनाएं.
STUDIO_JDK यह नीति उस JDK की जगह को सेट करती है जिसमें Android Studio चल रहा है. IDE को लॉन्च करने पर, यह STUDIO_JDK, JDK_HOME, और JAVA_HOME की जांच करता है इसी क्रम में, एनवायरमेंट वैरिएबल.
STUDIO_GRADLE_JDK इस नीति से, उस JDK की जगह की जानकारी सेट की जाती है जिसका इस्तेमाल Android Studio, ग्रेडल डीमन को शुरू करने के लिए करता है. आसानी से अपने कैलेंडर में जोड़ें. IDE लॉन्च करें. यह पहले STUDIO_GRADLE_JDK की जांच करता है. अगर आपने STUDIO_GRADLE_JDK के बारे में नहीं बताया गया है, आईडीई इसमें सेट की गई वैल्यू का इस्तेमाल करता है प्रोजेक्ट के स्ट्रक्चर की सेटिंग.
एम्युलेटर एनवायरमेंट वैरिएबल
डिफ़ॉल्ट रूप से, एम्युलेटर कॉन्फ़िगरेशन फ़ाइलें $HOME/.android/avd/ से कम का $HOME/.android/ और एवीडी डेटा. आप इन एनवायरमेंट वैरिएबल को सेट करके डिफ़ॉल्ट सेटिंग को बदलें. emulator -avd <avd_name> निर्देश, avd में खोजता है डायरेक्ट्री को $ANDROID_AVD_HOME में मानों के क्रम में, $ANDROID_USER_HOME/avd/ और $HOME/.android/avd/.

एम्युलेटर के एनवायरमेंट वैरिएबल से जुड़ी सहायता के लिए, emulator -help-environment. इसके बारे में जानकारी के लिए emulator कमांड-लाइन के विकल्प, देखें कमांड लाइन से एम्युलेटर शुरू करें.

ANDROID_EMULATOR_HOME यह उपयोगकर्ता के हिसाब से एम्युलेटर कॉन्फ़िगरेशन का पाथ सेट करता है डायरेक्ट्री. डिफ़ॉल्ट तौर पर, यह $ANDROID_USER_HOME पर सेट होती है.

Android Studio 4.3 और उससे पहले के वर्शन जैसे पुराने टूल ANDROID_USER_HOME. उन टूल के लिए, डिफ़ॉल्ट मान यह है $ANDROID_SDK_HOME/.android.

ANDROID_AVD_HOME इससे उस डायरेक्ट्री का पाथ सेट किया जाता है जिसमें एवीडी के लिए बने सभी एट्रिब्यूट शामिल होते हैं फ़ाइलें, जिसमें ज़्यादातर डिस्क की बहुत बड़ी इमेज होती हैं. यह डिफ़ॉल्ट जगह है $ANDROID_EMULATOR_HOME/avd/. आप नई जगह चुन सकते हैं, अगर डिस्क में डिफ़ॉल्ट जगह कम है.
Android एम्युलेटर शुरू होने पर, यहां दिए गए एनवायरमेंट वैरिएबल की क्वेरी करता है:
ANDROID_LOG_TAGS ANDROID_LOG_TAGS देखें.
HTTP_PROXY

इसमें एचटीटीपी/एचटीटीपीएस प्रॉक्सी शामिल है ग्लोबल एचटीटीपी प्रॉक्सी के लिए सेटिंग. इसका इस्तेमाल, होस्ट और पोर्ट के बीच कोलन (:) सेपरेटर के तौर पर किया जाता है. इसके लिए उदाहरण, set HTTP_PROXY=myserver:1981.

यह कमांड लाइन से एम्युलेटर चलाते समय -http-proxy proxy आर्ग्युमेंट.

ANDROID_VERBOSE ANDROID_VERBOSE देखें.
ANDROID_HOME ANDROID_HOME देखें.
ANDROID_EMULATOR_USE_SYSTEM_LIBS इसमें 0 (डिफ़ॉल्ट) या 1 वैल्यू होती है. वैल्यू 1 का मतलब है कि सिस्टम की libstdc++.so फ़ाइल का इस्तेमाल, एम्युलेटर के साथ आने वाली फ़ाइल के बजाय किया जाता है. इस एनवायरमेंट वैरिएबल को सिर्फ़ तब सेट करें, जब एम्युलेटर आपके Linux सिस्टम पर शुरू न हो ऐसा सिस्टम लाइब्रेरी में हुई है. उदाहरण के लिए, कुछ Linux Radeon GL ड्राइवर लाइब्रेरी हाल की libstdc++.so फ़ाइल की ज़रूरत है.
क्विक एम्युलेटर (QEMU) ऑडियो
QEMU_AUDIO_DRV QEMU_AUDIO_OUT_DRV QEMU_AUDIO_IN_DRV Linux पर, आप डिफ़ॉल्ट ऑडियो बदल सकते हैं QEMU_AUDIO_DRV एनवायरमेंट वैरिएबल सेट करके, एम्युलेटर का बैकएंड इनमें से किसी एक वैल्यू का इस्तेमाल करें:
  • alsa: ऐडवांस Linux साउंड आर्किटेक्चर (ALSA) बैकएंड का इस्तेमाल करें
  • esd: Enlightened Sound Deemon (EsounD) बैकएंड का इस्तेमाल करें
  • sdl: सिंपल डायरेक्टमीडिया लेयर (एसडीएल) ऑडियो बैकएंड का इस्तेमाल करें. ऐसा कोई ऑडियो इनपुट नहीं किया जाता समर्थित)
  • oss:: ओपन साउंड सिस्टम (ओएसएस) बैकएंड का इस्तेमाल करें
  • none:: ऑडियो की सुविधा नहीं है
set QEMU_AUDIO_DRV=alsa

आपके पास ऑडियो इनपुट और ऑडियो आउटपुट के लिए अलग-अलग बैकएंड का इस्तेमाल करने का विकल्प भी होता है. इसके लिए, इनमें से किसी एक को चुनें QEMU_AUDIO_OUT_DRV और QEMU_AUDIO_IN_DRV के लिए QEMU वैल्यू एनवायरमेंट वैरिएबल:

set QEMU_AUDIO_OUT=esd
set QEMU_AUDIO_IN=oss

अगर आपको ऑडियो की सुविधा बंद करनी है, तो emulator -no-audio विकल्प का इस्तेमाल करें या QEMU_AUDIO_DRV को none पर सेट करें. आपको इन स्थितियों में ऑडियो बंद करना पड़ सकता है:

  • बहुत कम मामलों में, एम्युलेटर के चलने के दौरान ऑडियो ड्राइवर की वजह से Windows फिर से चालू हो सकता है.
  • कुछ Linux मशीन पर, हो सकता है कि एम्युलेटर, ऑडियो सहायता चालू होने पर चालू हो जाए.
adb एनवायरमेंट वैरिएबल
ANDROID_SERIAL इस वैरिएबल का इस्तेमाल एम्युलेटर का सीरियल नंबर देने के लिए करें, जैसे को adb कमांड में, एम्युलेटर-5555के तौर पर जोड़ें. अगर आपने यह वैरिएबल सेट किया है, लेकिन -s का इस्तेमाल किया है जो कमांड लाइन से सीरियल नंबर तय करता है उसका विकल्प. कमांड लाइन इनपुट, ANDROID_SERIAL में मौजूद वैल्यू.

नीचे दिए गए उदाहरण में, ANDROID_SERIAL और कॉल सेट किए गए हैं adb install helloworld.apk, इसके बाद Android ऐप्लिकेशन इंस्टॉल होता है Emulator-5555 पर मौजूद पैकेज.

set ANDROID_SERIAL=emulator-555
adb install helloWorld.apk

adb Logcat एनवायरमेंट वैरिएबल
ANDROID_LOG_TAGS डिफ़ॉल्ट फ़िल्टर सेट करने के लिए, इस एनवायरमेंट वैरिएबल का इस्तेमाल करें एक्सप्रेशन, जब आप अपने डेवलपमेंट कंप्यूटर से logcat चलाते हैं. जैसे:
set ANDROID_LOG_TAGS=ActivityManager:I MyApp:D *:.

यह -logcat tags तर्क को कमांड लाइन से एम्युलेटर चलाएं.

फ़िल्टर लॉग का आउटपुट देखें पढ़ें.

ADB_TRACE इसमें लॉग की जाने वाली डीबग की जानकारी की कॉमा-सेपरेटेड लिस्ट होती है. मान इनमें से कोई भी हो सकते हैं: all, adb, sockets, packets, rwx, usb, sync, sysdeps, transport और jdwp.

adb क्लाइंट और adb सर्वर के लिए adb लॉग दिखाने के लिए, ADB_TRACE सेट करें को all में बदलें और फिर adb logcat कमांड को इस तरह कॉल करें:

set ADB_TRACE=all
adb logcat
ANDROID_VERBOSE इसमें वर्बोस आउटपुट के विकल्पों की ऐसी सूची शामिल है जिसे कॉमा लगाकर अलग किया गया है (डीबग टैग) का इस्तेमाल एम्युलेटर के लिए किया जाता है. नीचे दिए गए उदाहरण में ANDROID_VERBOSE दिखाया गया है इसे debug-socket और debug-radio डीबग टैग की मदद से तय किया गया है:
set ANDROID_VERBOSE=socket,radio

यह -verbose -verbose-socket -verbose-radio को तय करने जैसा ही है कमांड लाइन से एम्युलेटर चलाते समय सभी आर्ग्युमेंट इस्तेमाल करें.

काम न करने वाले डीबग टैग को अनदेखा कर दिया जाता है. ज़्यादा के लिए डीबग टैग के बारे में जानकारी, emulator -help-debug-tags का इस्तेमाल करें.