آموزش نصب اندروید استودیو در فدورا

دیروز میخواستم به فدورا ۳۴ آپدیت کنم و بنا به دلایلی بجای آپدیت مستقیم (بدون حذف دستی سیستم عامل و نصب نسخه جدید) از روش غیر مستقیم استفاده کردم :). بعد از نصب و راه‌اندازی سیستم عامل، داشتم اندروید استودیو رو نصب می‌کردم که دیدم همچین سر راست نیست نصبش. بخاطر همین تصمیم گرفتم آموزش نصب اندروید استودیو در فدورا رو تو این پست توضیح قرار بدم.مراحل نصب به صورت زیر هستش:نصب کتابخانه‌های ضروریدانلود اندروید استودیونصب اندروید استودیوتنظیم Graphic acceleration و VM accelerationآماده سازی environmentتنظیمات اولیه اندروید استودیو (نصب و آپدیت Android SDK و ابزارهای مورد نیاز)نصب کتابخانه‌های ضرورییکسری کتابخانه ضروری هستش که برای نصب و اجرای اندروید استودیو و متعلقاتش باید نصب کنید. برای اینکار دستور زیر رو در ترمینال اجرا کنید:sudo dnf install zlib.i686 ncurses-libs.i686 bzip2-libs.i686دانلود اندروید استودیوبه این آدرس (سایت رسمی دانلود اندروید استودیو) برید و طبق تصاویر زیر نسخه لینوکس اندروید استودیو رو دانلود کنید.نصب اندروید استودیومنظور از نصب اندروید استودیو، خارج کردن فایل دانلودی از حالت فشرده و انتقال اون به محل مناسب هستش.فایلی که دانلود شده، یک فایل فشرده با پسوند tar.gz هستش. برای خارج کردنش از حالت فشرده به صورت زیر عمل کنید.توی ترمینال وارد فولدری بشید که فایل دانلود شده توی اون هست. بعد دستور زیر رو بزنید:tar -xzvf android-studio-ide-202.7351085-linux.tar.gzفایل اکسترکت شده در فولدر Home شما قرار می‌گیره.اگر هم به ترمینال عادت ندارید و با محیط گرافیکی راحت‌ترید، خب براحتی میشه با راست کلیک کردن روی فایل و انتخاب گزینه Extract، فایل رو از حالت فشرده خارج کرد.حالا یک فولدر بسازید به اسم android-sdk. بعد یه فولدر دیگه بسازید به اسم google. بعد دو فولدر android-sdk و android-studio رو به داخل فولدر google انتقال بدید (توی فایل اکسپلورر فدورا میشه براحتی این کارها رو انجام داد ولی اگر خواستید توی ترمینال انجام بدید، دستور mkdir برای ساخت دایرکتوری/فولدر هستش و دستور mv برای انتقال فایل/فولدر).حالا باید به تمام کاربرها مجوز خواندن/نوشتن روی این فولدر (google) و تمام محتویاتش رو بدید. این کار برای اینه که نرم‌افزار بتونه فایل های خودش رو تغییر بده (مثلا زمان آپدیت کردن). برای اینکار می‌تونید از دستور زیر استفاده کنید:chmod -R ugo+rw folder-nameیا اینکه با راست کلیک روی فولدر مورد نظر و رفتن به زبانه Persmission اینکار رو انجام بدید:خب،‌ حالا فولدر google رو به فولدر opt باید انتقال بدید. البته این دلبخواه هستش و میتونید هر جای دیگه که خواستید بزاریدش. ولی معمولا نرم‌افزارها رو توی لینوکس، داخل فولدر opt قرار می‌دن. برای انتقال فایل به فولدر opt نیاز به دسترسی روت دارید. برای اینکار دستور زیر رو توی ترمینال بزنید. بعد پسورد میخواد ازتون، که باید وارد کنید.sudo mv google /optتنظیم Graphic acceleration و VM accelerationتنظیم Graphic accelerationGraphic acceleration برای رندر گرفتن، از سخت‌افزار کامپیوترتون (عموما GPU) استفاده می‌کنه و شبیه‌ساز اندروید (android emulator) جهت اجرای روون‌تر و با پرفرمنس بهتر، می‌تونه از این ویژگی استفاده کنه. وقتی که دارید یک emulator می‌سازید، می‌تونید مشخص کنید که این emulator باید از hardware acceleration استفاده کنه یا از software acceleration. خب طبیعیه که hardware acceleration چون سرعت و پرفرمنس بهتری داره، پیشنهاد می‌شه. اگر GPU سیستم‌تون و درایورهای اون از hardware acceleration پشتیبانی کنن، خود اندروید استودیو به صورت پیش‌فرض hardware acceleration رو انتخاب می‌کنه. در غیر اینصورت software acceleration رو انتخاب می‌کنه. ولی خب به صورت دستی هم می‌تونید تغییرش بدید.تنظیم VM accelerationVM acceleration برای افزایش سرعت اجرای emulator از CPU سیستم‌تون استفاده می‌کنه. یک ابزاری به اسم hypervisor با استفاده از virtualization extension های پردازنده کامپیوترتون این کار رو انجام می‌ده. برای استفاده از این قابلیت، CPU کامپیوترتون باید از یکی از virtualization extension های Intel Virtualization Technology (VT, VT-x, vmx) یا AMD Virtualization (AMD-V, SVM) پشتیبانی کنه. سیستم‌های برپایه لینوکس از طریق پکیج KVM از VM acceleration پشتیبانی می‌کنن.برای اینکه مطمئن بشید که CPU تون از یکی از virtualization extension های گفته شده پشتیبانی می‌کنه دستور زیر رو توی ترمینال بزنید:cat /proc/cpuinfo | egrep &quotvmx|svm&quotبعد از اجرای دستور بالا، باید چیزی شبیه به تصویر زیر رو توی ترمینال ببینید:اگر بعد از اجرای دستور قبل، هیچ خروجی ندیدید، مطمئن بشید که تنظیمات virtualization رو در قسمت تنظیمات بایوس سیستم‌تون فعال کردید.اگر بعد از فعال کردن تنظیمات virtualization در بایوس، همچنان بعد از اجرای دستور قبل، هیچ خروجی نگرفتید، یعنی سیستم‌تون متاسفانه از virtualization extension مربوطه پشتیبانی نمی‌کنه. اما همچنان می‌تونید از KVM استفاده کنید، ولی خود emulator به صورت خودکار به software virtualization سوییچ می‌کنه، که کندتره.نصب KVMبرای نصب KVM و پیکیج‌های مورد نیاز برای virtualization دستور زیر رو در ترمینال بزنید:sudo dnf install bridge-utils libvirt virt-install qemu-kvmبعد از نصب، با زدن دستور زیر می‌تونید اطمینان حاصل کنید که ماژول‌های kernel به درستی بارگذاری شدن:lsmod | grep kvmخروجی که می‌بینید باید شبیه به تصویر زیر باشه:خب حالا باید [۱]KVM deamon رو start و enable کنید. برای اینکار، دستورات زیر رو به ترتیب توی ترمینال اجرا کنید:sudo systemctl start libvirtd sudo systemctl enable libvirtdآماده‌سازی environmentدر اندروید استودیو (و کلا سیستم/نرم‌افزارهای کامپیوتری) یکسری متغیر (variable) هستن که به مسیر فایل/فولدر/نرم‌افزار خاصی اشاره می‌کنن. به عنوان مثال متغیری هست که به فولدر sdk اندروید اشاره می‌کنه. با تنظیم این متغیرها، سیستم‌تون به صورت سراسری می‌دونه که مثلا sdk اندروید کجا نصب شده.خب این تنظیمات رو باید توی فایل تنظیمات shell انجام بدید. فایل تنظیمات shell، یک فایل مخفی هستش که توی فولدر home تون هستش.فایل‌های مخفی در سیستم‌های بر پایه یونیکس، با پیش‌وند . شروع می‌شن. برای دیدن فایل‌های مخفی توی file explorer کلیدهای Ctrl + h رو بزنید.اگر shell تون bash هست، فایل تنظیمات .bashrc هستش. خطوط زیر رو به انتهای این فایل اضافه کنید:# Android environments ANDROID_SDK_ROOT=&quot/opt/google/android-sdk&quot PATH=&quot$PATH:$ANDROID_SDK_ROOT/platform-tools&quot PATH=&quot$PATH:$ANDROID_SDK_ROOT/tools&quot PATH=&quot$PATH:$ANDROID_SDK_ROOT/tools/bin&quot PATH=&quot$PATH:$ANDROID_SDK_ROOT/emulator&quotدقت کنید که مقدار ANDROID_SDK_ROOT رو باید مسیر فولدر android-sdk که توی مراحل قبل ساختید رو بدید. همونطور که می‌بینید برای من توی فولدر opt هستش: /opt/google/android-sdkحالا ترمینال حال حاضرتون رو ببندید و یک ترمینال جدید باز کنید و دستور زیر رو بزنید تا environment variable ها refresh بشن:source ~/.bashrcتنظیمات اولیه اندروید استدیواجرای اندروید استودیودر ابتدا برای اجرای اندروید استودیو باید فایل studio.sh رو که توی فولدر android-studio هست رو اجرا کنید. برای اینکار دستور زیر رو توی ترمینال اجرا کنید. دقت کنید که مسیر فولدر android-studio خودتون رو بزنید:دقت کنید کنید که قبل از اجرای اندروید استودیو نیاز هست که آی پی تون رو تغییر بدید (برای آپدیت android sdk و نصب یکسری ابزار مربوط به توسعه اندروید). می‌تونید از تور استفاده کنید. آموزش استفاده از تور توی فدورا اینجا هست. اگر نمی‌خواید کل سیستم‌تون رو پروکسی کنید یا به هر دلیلی نمی‌تونید، می‌تونید فقط توی اندروید استودیو از پروکسی استفاده کنید. برای اینکار از توی قسمت تنظیمات به Appearance & Behaviors > System Settings > HTTP Proxy برید./opt/google/android-studio/bin/studio.shخب همونطور که می‌بینید اندروید استودیو اجرا می‌شه. چند تا next بزنید تا به مرحله نصب android sdk برسید.نصب و آپدیت Android SDKتوی این قسمت مسیر فولدر android-sdk رو توی قسمت Android SDK Location وارد کنید. توضیحات و حجم فایل‌های دانلود رو توی این پنجره می‌بینید. حالا next بزنید و منتظر بمونید تا دانلود تمام بشه.در نهایت finish رو بزنید تا به پنجره Welcome اندروید استودیو وارد بشید.اضافه کردن راه‌انداز یا آیکون (launcher) اندروید استودیوطبق تصویر زیر، روی گزینه Configure در قسمت پایین سمت چپ صفحه خوش‌آمد گویی اندروید استدیو کلیک کنید و گزینه Create Desktop Entry رو بزنید.نصب Android SDK Toolsیکسری ابزار هست که برای توسعه اندروید نیاز هستن که باید نصبشون کنید. برای اینکار روی گزینه Configure در قسمت پایین سمت چپ صفحه خوش‌آمد گویی اندروید استودیو کلیک کنید و گزینه SDK Manager رو بزنید.به زبانه SDK Tools برید و طبق تصویر زیر، ابزارهای مورد نظر رو تیک‌شون رو بزنید. در نهایت رو Apply یا OK کلیک کنید و مراحل نصب رو طی کنید.حالا اندروید استودیو آماده استفاده است :tada:۱- Deamon یک پروسه (برنامه) است که در پس‌زمینه سیستم بصورت بی وقفه اجرا می‌شود. برای مطالعه بیشتر اینجا رو مطالعه کنید.