আপনি এনভায়রনমেন্ট ভেরিয়েবল সেট করার মাধ্যমে 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 UI-এর মাধ্যমে এটি যোগ করুন। কীভাবে করতে হয় তা জানতে আপনার Windows ভার্সনের ডকুমেন্টেশন চেক করুন ।
macOS ও Linux: এনভায়রনমেন্ট ভেরিয়েবল সেট করার সুনির্দিষ্ট পদ্ধতি নির্ভর করে আপনি কোন শেল ব্যবহার করছেন তার উপর। কোন ধরনের শেল চলছে তা নির্ধারণ করতে, নিম্নলিখিত টাইপ করুন:
echo $0
Gnu Bash বা Zsh-এর মতো শেলগুলিতে, নিম্নলিখিত সিনট্যাক্স ব্যবহার করে ভেরিয়েবল সেট করা হয়:
export VARIABLE_NAME=<new-value>
অন্যান্য শেল, যেমন TCSH-এ, নিম্নলিখিত সিনট্যাক্স ব্যবহার করে ভেরিয়েবল সেট করা হয়:
setenv VARIABLE_NAME <new-value>
নতুন শেল ইনস্ট্যান্স রান করার সময় প্রতিবার ভেরিয়েবল সেট করতে, শেল ইনিশিয়ালাইজেশন স্ক্রিপ্টে এইসব কমান্ড যোগ করা যায়।
কোন শেল ব্যবহার করা হচ্ছে তার উপর নির্ভর করে শেল ইনিশিয়ালাইজেশন স্ক্রিপ্টের লোকেশন।
Gnu Bash-এর জন্য, লোকেশন ~/.bash_profile হতে পারে। Zsh-এর জন্য
লোকেশন ~/.zprofile হতে পারে। TCSH-এর জন্য, লোকেশন হতে পারে
~/.cshrc। আপনি যে শেল ব্যবহার করছেন সেটির ডকুমেন্টেশন
দেখে নিশ্চিত হয়ে নিন।
টুলের লোকেশন যোগ করতে, আপনি PATH এনভায়রনমেন্ট ভেরিয়েবলও আপডেট করতে পারবেন।
Gnu Bash বা Zsh-এর জন্য:
export ANDROID_HOME=~/Library/Android/sdk export PATH=$PATH:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
এবং TCSH-এর জন্য:
setenv ANDROID_HOME ~/Library/Android/sdk setenv PATH $PATH\:$ANDROID_HOME/tools\:$ANDROID_HOME/tools/bin\:$ANDROID_HOME/platform-tools
ভেরিয়েবল রেফারেন্স
নিচের সারণীতে Android SDK টুলের জন্য সাধারণত ব্যবহৃত এনভায়রনমেন্ট ভেরিয়েবল সম্পর্কে বর্ণনা করা হয়েছে।
টেবিল ১. এনভায়রনমেন্ট ভেরিয়েবল
| Android SDK এনভায়র্নমেন্ট ভেরিয়েবল | |
|---|---|
ANDROID_HOME |
SDK ইনস্টলেশন ডিরেক্টরির পাথ সেট করে। সেট করার পরে,
সাধারণত ভ্যালু পরিবর্তন হয় না এবং একই মেশিনে একাধিক ব্যবহারকারী এটি শেয়ার করতে পারেন।
ANDROID_SDK_ROOT, যা SDK ইনস্টলেশন ডিরেক্টরিকেও নির্দেশ করে,
সেটি আর ব্যবহার করা হয় না। আপনি এটি ব্যবহার করা চালিয়ে গেলে, Android Studio এবং Android Gradle প্লাগ-ইন
চেক করে দেখবে যে পুরনো ও নতুন ভেরিয়েবল সামঞ্জস্যপূর্ণ কিনা।
|
ANDROID_USER_HOME |
Android SDK-এর অংশ এমন টুলের জন্য ব্যবহারকারীর পছন্দ সংক্রান্ত ডিরেক্টরির পাথ সেট করে।
ডিফল্ট হিসেবে $HOME/.android/ সেট করা থাকে।
Android Studio 4.3 ও তার আগের ভার্সনের মতো কিছু পুরনো টুল
|
REPO_OS_OVERRIDE
|
বর্তমান মেশিনের থেকে আলাদা অপারেটিং সিস্টেমের জন্য প্যাকেজ ডাউনলোড করতে
sdkmanager
ব্যবহার করলে এই ভেরিয়েবলকে windows, macosx বা linux হিসেবে সেট করুন।
|
| Android Studio কনফিগারেশন এনভায়রনমেন্ট ভেরিয়েবল | |
| Android Studio কনফিগারেশন ভেরিয়েবলে এমন সেটিংস থাকে যা কনফিগারেশন ফাইল ও JDK-এর লোকেশন কাস্টমাইজ করে। শুরু করার সময়, Android Studio সেটিংসের জন্য এইসব ভেরিয়েবল চেক করে। আরও তথ্যের জন্য, Android Studio কনফিগার করুন দেখুন। | |
STUDIO_VM_OPTIONS
|
studio.vmoptions ফাইলের লোকেশন সেট করে।
এই ফাইলে এমন সেটিংস আছে যা Java HotSpot
ভার্চুয়াল মেশিনের পারফর্ম্যান্সের বৈশিষ্ট্যকে প্রভাবিত করে। Android Studio থেকেও এই ফাইল অ্যাক্সেস করা যাবে। দেখুন
আপনার VM বিকল্প কাস্টমাইজ করুন।
|
STUDIO_PROPERTIES
|
idea.properties
ফাইলের লোকেশন সেট করে। এই ফাইলটি আপনাকে Android Studio IDE প্রপার্টি কাস্টমাইজ করতে দেয়, যেমন
ব্যবহারকারীর ইনস্টল করা প্লাগ-ইন এবং IDE-তে কাজ করে এমন সর্বাধিক ফাইল সাইজের পাথ। দেখুন
আপনার IDE প্রপার্টি কাস্টমাইজ করুন।
|
STUDIO_JDK
|
Android Studio যে JDK-তে চলে তার লোকেশন সেট করে। আপনি IDE লঞ্চ করলে,
এটি সেই ক্রমে STUDIO_JDK, JDK_HOME ও JAVA_HOME
এনভায়রনমেন্ট ভেরিয়েবল চেক করে।
|
STUDIO_GRADLE_JDK
|
Android Studio, Gradle ডেমন চালু করার জন্য যে JDK ব্যবহার করে তার লোকেশন সেট করে। আপনি IDE লঞ্চ করলে, এটি প্রথমে STUDIO_GRADLE_JDK চেক করে। STUDIO_GRADLE_JDK
সংজ্ঞায়িত করা না থাকলে, IDE
প্রোজেক্ট স্ট্রাকচার সেটিংসে সেট করা মান ব্যবহার করে।
|
| ইমুলেটর এনভায়রনমেন্ট ভেরিয়েবল | |
ডিফল্ট হিসেবে, এমুলেটর কনফিগারেশন ফাইল
$HOME/.android/-এর অধীনে এবং AVD ডেটা $HOME/.android/avd/-এর অধীনে স্টোর করে। আপনি
নিম্নলিখিত এনভায়রনমেন্ট ভেরিয়েবল সেট করে ডিফল্ট ওভাররাইড করতে পারবেন।
emulator -avd <avd_name> কমান্ডটি $ANDROID_AVD_HOME,
$ANDROID_USER_HOME/avd/ এবং $HOME/.android/avd/-এর ভ্যালুর ক্রম অনুযায়ী avd
ডিরেক্টরি সার্চ করে।
ইমুলেটর এনভায়রনমেন্ট ভেরিয়েবল সংক্রান্ত সাহায্যের জন্য, কমান্ড লাইনে
|
|
ANDROID_EMULATOR_HOME
|
ব্যবহারকারী-নির্দিষ্ট এমুলেটর কনফিগারেশন
ডিরেক্টরির পাথ সেট করে। ডিফল্ট হিসেবে $ANDROID_USER_HOME সেট করা থাকে।
Android Studio 4.3 ও তার আগের ভার্সনের মতো পুরনো টুল
|
ANDROID_AVD_HOME
|
AVD-নির্দিষ্ট সব ফাইল যে ডিরেক্টরিতে আছে সেটির পাথ সেট করে, এগুলিতে বেশিরভাগই খুব বড় ডিস্ক ইমেজ থাকে। ডিফল্ট লোকেশন হল
$ANDROID_EMULATOR_HOME/avd/. আপনি হয়ত নতুন লোকেশন নির্দিষ্ট করতে চাইবেন যদি
ডিফল্ট লোকেশনে ডিস্ক স্পেস কম থাকে।
|
| Android ইমুলেটর চালু হওয়ার সময় নিম্নলিখিত এনভায়রনমেন্ট ভেরিয়েবল কোয়েরি করে: | |
ANDROID_LOG_TAGS
|
ANDROID_LOG_TAGS দেখুন।
|
HTTP_PROXY
|
গ্লোবাল HTTP প্রক্সির জন্য HTTP/HTTPS প্রক্সি
সেটিং থাকে। হোস্ট ও পোর্টের মধ্যে কোলন (:) সেপারেটর ব্যবহার করে। যেমন, এটি কমান্ড লাইন থেকে এমুলেটর চালানোর সময়
|
ANDROID_VERBOSE
|
ANDROID_VERBOSE দেখুন।
|
ANDROID_HOME
|
ANDROID_HOME দেখুন।
|
ANDROID_EMULATOR_USE_SYSTEM_LIBS
|
এতে ০ (ডিফল্ট) বা ১ ভ্যালু থাকে। ১ ভ্যালু মানে হল, এমুলেটরের সাথে বান্ডেল করা ফাইলের পরিবর্তে সিস্টেমের
libstdc++.so ফাইল ব্যবহার করা হয়।
সিস্টেম লাইব্রেরি সংক্রান্ত সমস্যার কারণে আপনার Linux সিস্টেমে ইমুলেটর চালু না হলে
তবেই এই এনভায়রনমেন্ট ভেরিয়েবল সেট করুন। যেমন, কিছু Linux Radeon GL ড্রাইভার লাইব্রেরির
জন্য আরও সাম্প্রতিক libstdc++.so ফাইল প্রয়োজন।
|
| দ্রুত ইমুলেটর (QEMU) অডিও | |
QEMU_AUDIO_DRV
QEMU_AUDIO_OUT_DRV
QEMU_AUDIO_IN_DRV
|
Linux-এ, আপনি এমুলেটরের ডিফল্ট অডিও
ব্যাকএন্ড পরিবর্তন করতে পারেন, এর জন্য QEMU_AUDIO_DRV এনভায়রনমেন্ট ভেরিয়েবলকে
নিম্নলিখিত ভ্যালুগুলির মধ্যে একটিতে সেট করুন:
set QEMU_AUDIO_DRV=alsa
এছাড়াও, আপনি set QEMU_AUDIO_OUT=esd set QEMU_AUDIO_IN=oss
আপনি অডিও সহায়তা বন্ধ করতে চাইলে,
|
| adb এনভায়রনমেন্ট ভেরিয়েবল | |
ANDROID_SERIAL
|
adb কমান্ডে ইমুলেটর সিরিয়াল নম্বর, যেমন
emulator-5555, দিতে এই ভেরিয়েবল ব্যবহার করুন। আপনি এই ভেরিয়েবল সেট করলেও, কমান্ড লাইন থেকে সিরিয়াল নম্বর নির্দিষ্ট করতে -s
বিকল্প ব্যবহার করলে, কমান্ড লাইনের ইনপুট ANDROID_SERIAL-এর ভ্যালুকে ওভাররাইড করে দেয়।
নিচের উদাহরণটি set ANDROID_SERIAL=emulator-555 adb install helloWorld.apk |
| adb logcat এনভায়রনমেন্ট ভেরিয়েবল | |
ANDROID_LOG_TAGS
|
আপনার ডেভেলপমেন্ট কম্পিউটার থেকে adb logcat চালানোর সময় ডিফল্ট ফিল্টার
এক্সপ্রেশন সেট করতে এই এনভায়রনমেন্ট ভেরিয়েবল ব্যবহার করুন। যেমন:
set ফিল্টার এক্সপ্রেশন, এমুলেটর
আরও তথ্য ও উদাহরণের জন্য লগ আউটপুট ফিল্টার করা দেখুন। |
ADB_TRACE
|
লগ করার জন্য ডিবাগ সংক্রান্ত তথ্যের কমা-সেপারেটেড তালিকা থাকে।
ভ্যালুগুলি নিম্নলিখিত হতে পারে: all, adb, sockets,
packets, rwx, usb, sync, sysdeps,
transport এবং jdwp.
set ADB_TRACE=all adb logcat |
ANDROID_VERBOSE
|
এতে এমুলেটর দ্বারা ব্যবহৃত ভার্বোস আউটপুট বিকল্পের কমা-সেপারেটেড তালিকা
(ডিবাগ ট্যাগ) থাকে। নিচের উদাহরণে debug-socket এবং debug-radio ডিবাগ ট্যাগ সহ ANDROID_VERBOSE
সংজ্ঞায়িত করা হয়েছে:
set ANDROID_VERBOSE=socket,radio এটি কমান্ড লাইন থেকে এমুলেটর চালানোর সময়
কাজ করে না এমন ডিবাগ ট্যাগ উপেক্ষা করা হয়। ডিবাগ ট্যাগ সম্পর্কে আরও
তথ্য পেতে, |