ADB امکانی است که در واقع گوگل برای توسعهدهندگان اندروید فراهم کرده است. این ویژگی میتواند در مواردی باعث نجات گوشی اندرویدی و محتویات آن شود.
آشنایی بیشتر با ایدیبی باعث میشود هنگام انجام دستکاریهای سیستمی مطمئنتر عمل کنید و در صورت بروز مشکل قادر به رفع آن باشید.
ADB چیست؟
ایدیبی یک ابزار ارسال دستور همهکاره است که امکان برقراری ارتباط بین رایانه و دستگاه اندرویدی را فراهم میکند تا بتوانید اموری مانند انتقال داده، تصویربرداری از صفحه و اجرای دستورات shell را از طریق رایانه در گوشی انجام دهید.
ایدیبی درواقع ابزاری برای توسعهدهندگان اندروید است که در اندروید SDK یا کیت توسعهی نرمافزار گنجانده شده است.
نحوهی نصب ADB
چنانچه فقط به ایدیبی نیاز دارید، نیازی به دانلود کامل SDK نیست. خوشبختانه امکان دانلود مجزای درایور ایدیبی وجود دارد و میتوان آن را در چند گام ساده در سیستم عاملهای مختلف نصب کرد.
نصب ADB در ویندوز
نصب درایور ایدیبی در ویندوز به لطف وجود نصبکنندهها بسیار آسان است. با استفاده از نصبکنندهای که به شما معرفی میکنیم، درایور ایدیبی وارد مسیر درایورهای سیستم شما میشود؛ این یعنی پس از استفاده از این نصبکننده، دستورات ایدیبی از تمام مسیرهای ویندوز قابل دسترس خواهند بود.
نصب adb در ویندوز
کافی است این نصبکننده را دانلود کرده و اجرا کنید. در پنجرهای که روبهروی شما قرار میگیرد از شما پرسیده میشود که آیا درایورهای ایدیبی و فستبوت را نصب میکنید یا خیر. برای دادن پاسخ مثبت کلید Y را در کیبورد خود زده و اینتر را بفشارید. سؤال بعدی در خصوص امکان اجرای ایدیبی از تمام مسیرها خواهد بود که در این مرحله نیز باید به شکل قبل پاسخ مثبت بدهید.
در مرحلهی بعد از شما سؤال میشود که آیا مایل به نصب درایورهای دستگاه خود هستید یا خیر. در صورت دادن پاسخ مثبت با فشردن کلید Y و اینتر، اینستالر دیگری باز خواهد شد که درایور گوشی شما را نصب خواهد کرد. پس از اتمام نصب، نصبکننده بسته خواهد شد و همه چیز مهیای استفاده از ایدیبی خواهد بود.
نصب ADB روی سیستمعامل مک X
همانطور که برای ویندوز نصبکننده وجود دارد برای مک هم اسکریپتهایی موجود است که روند نصب ایدیبی را تسهیل میکنند.
فایل Android.zip را از اینجا دانلود کرده و فولدر آن را روی دسکتاپ خود استخراج کنید.
ترمینال را باز کرده و دستور زیر را وارد کنید.
cd Desktop/Android
حالا با دستور زیر درایورهای ADB و فستبوت را نصب کنید.
./ADB-Install-Mac.sh
پس از اجرای کامل اسکریپت درایورهای ایدیبی شما در /usr/bin/ قرار خواهند گرفت.
توجه: چنانچه فایلهای خود را روی دسکتاپ قرار نمیدهید مسیر Desktop/Android را مطابق با مسیری که فایلها را در آن قرار دادهاید تغییر دهید.
نصب ADB روی سیستمهای لینوکسی
نصب ایدیبی روی لینوکس از دو سیستمعامل دیگر سادهتر است. روی بسیاری از توزیعهای لینوکس، کافی است دستور زیر را از ترمینال اجرا کنید.
sudo apt-get install android-tools-adb android-tools-fastboot
اگر بنا به هر دلیلی دستور فوق کار نکرد، احتمالا باید یک مخزن به APT اضافه کنید. برای این کار از دستور زیر استفاده کنید.
sudo add-apt-repository ppa:phablet-team/tools && sudo apt-get update
پس از پایان اجرای این دستور، دستور اول را مجددا اجرا کنید تا درایو ایدیبی با موفقیت نصب شود.
فعالسازی ADB در دستگاه اندرویدی
روش انجام این کار ممکن است وابسته به دستگاه شما کمی متفاوت باشد؛ اما کلیت کار در تمامی دستگاههای اندرویدی به یک شکل است.
برای شروع به منوی تنظیمات گوشی یا تبلت خود بروید. معمولا پایینترین گزینه About phone ،About tablet یا About device است. روی این گزینه بزنید و از گزینههای موجود Build number را هفت مرتبه پشت سر هم لمس کنید.
در این لحظه پیام موقتی را روی صفحه مشاهده خواهید کرد مبنی بر اینکه به عنوان توسعهدهنده شناخته شدید؛ این یعنی بخش پنهان دولوپر آپشنز در منوی تنظیمات برای شما نمایان شد.
فعال کردن یو اس بی دیباگینگ
بعد از ظاهر شدن دولوپر آپشنز در پایین منوی اصلی تنظیمات، روی آن بزنید و از بین گزینههای موجود تیک مقابل USB debugging را بزنید و در پنجرهی باز شده OK را لمس کنید.
در این مرحله، هم رایانه و هم دستگاه اندرویدی شما ملزومات لازم برای استفاده از ADB را پیدا کردهاند. نوبت میرسد به اتصال یو اس بی و تنظیمات نوع اتصال.
اتصال یو اس بی در حالت USB Debugging
دستگاه اندرویدی خود را از طریق کابل یو اس بی به رایانه یا لپتاپ وصل کنید. در این لحظه احتمالا پیامی روی صفحهی دستگاه اندرویدی خود مشاهده میکنید که از شما سؤال میکند آیا اجازهی اتصال این رایانه به گوشی در حالت دیباگینگ را میدهید یا خیر. با لمس خانهی مقابل عبارت Always allow from this computer و تیکدار کردن آن روی OK بزنید تا مجوز دائم اتصال رایانه و دستگاه اندرویدی خود را تأیید کرده باشید.
چنانچه پیامی را که به آن اشاره شد، مشاهده نکردید، احتمالا تداخلی در قسمت اتصال به عنوان فضای ذخیرهسازی وجود دارد. اگر چنین باشد، برای رفع آن باید به منوی تنظیمات گوشی رفته و Storage را انتخاب کنید. در این قسمت طبق تصویر، روی دکمهی سهنقطه، در بالا سمت راست زده و USB computer connection را لمس کنید.
در این قسمت اگر (Media device (MTP فعال بود، آن را به (Camera (PTP تغییر دهید تا مجددا پیام Allow USB debugging که دفعهی قبل موفق به مشاهدهی آن نشده بودید، ظاهر شود.
حافظه storage
درصورتیکه مراحل قبل را به درستی انجام داده باشید، با فعال کردن یو اس بی دیباگینگ، همه چیز محیای گرفتن انواع لاگ خواهد بود.
دستورات پایهی ADB
حال که ایدیبی به خوبی نصب شده و کار میکند، با هم تعدادی از کارهایی که از آن بر میآید را مرور میکنیم.
انتقال فایل از رایانه به گوشی (پوشینگ)
adb push <مسیر فایل در رایانه> <مسیر مد نظر در گوشی>
این دستور، فایلی را از داخل رایانه به دستگاه اندرویدی شما هدایت میکند.
مورد مصرف این دستور زمانی است که کپی کردن معمول فایل از رایانه به گوشی ممکن نباشد. مثلا وقتی گوشی بالا نمیآید و تنها به ریکاوری دسترسی دارید. در این حالت با دستور زیر، میتوانید فایل رام را به گوشی منتقل کنید تا از طریق ریکاوری فلش کنید.
adb push sample.zip /sadcard/
توجه داشته باشید که در دستور فوق باید sample را با نام رام خود عوض کنید.
این دستور فایلی را که در مسیر اجرای دستور وجود دارد به مسیر اصلی حافظهی دستگاه اندرویدی شما منتقل خواهد کرد.
انتقال فایل از گوشی به رایانه (پولینگ)
adb pull <مسیر فایل در گوشی> <مقصد فایل در رایانه>
این دستور فایل مورد نظر شما را از دستگاه اندرویدی به رایانهی شما منتقل میکند.
مورد مصرف: نجات فایلهای مهم داخل گوشی، زمانی که گوشی دچار مشکل شده است و باید فلش یا فکتوری ریست شود.
adb pu /sdcard/sample.zip C:\
در نتیجهی اجرای دستور فوق فایل با نام sample.zip به درایو C رایانهی شما منتقل خواهد شد.
نصب برنامه
adb install -r <مسیر فایل apk>
این دستور اپلیکیشن اندروید موجود در رایانه را در دستگاه اندرویدی شما نصب میکند. قسمت r- در این دستور به ایدیبی میگوید که اگر برنامه در دستگاه نصب است، آن را با حفظ دادههای موجود، مجددا نصب کند. با این روش، اپلیکیشن به سرعت و بدون هیچ پرسشی در دستگاه شما نصب خواهد شد.
مورد مصرف: نصب سریع فایلهای apk که در رایانهی خود از آنها بکاپ نگه داشتهاید.
مثال:
adb install -r C:\AppBackups\NerdRage.apk
با اجرای دستور فوق اپلیکیشن NerdRage که در فولدر رایانهی شما قرار دارد، بدون سر و صدا و نمایش هیچ پیامی در گوشی شما نصب خواهد شد و میتوانید آیکون آن را در فهرست اپلیکیشنهای خود مشاهده کنید.
لاگ گرفتن
adb logcat
این دستور گزارش لحظهای از اتفاقات درون گوشی شما را در رایانه به نمایش در خواهد آورد.لاگ کت / LogCat
لاگکت برای کشف و بررسی خطاهای موجود در اجرای سیستمعامل اندروید و برنامههای آن بسیار مفید و کاربردی است. برای توقف جریان لاگکت از کلیدهای Ctrl به همراه C روی کیبورد رایانه استفاده کنید.
مورد مصرف: عیبیابی یک اپلیکیشن یا رام و گزارش آن به توسعهدهندهی مربوطه
دستورهای پیشرفتهی ADB
در این بخش با برخی دستورهای پیشرفتهی ایدیبی آشنا میشویم. به کمک این دستورها میتوانید کارهای خارقالعادهای انجام دهید.
ورود به shell
adb shell <دستور شل>
این دستور ایدیبی یک دستور شل را به اجرا در خواهد آورد.
adb shell
این دستور یک شل از راه دور را روی رایانهی شما باز میکند که به شما امکان وارد کردن دستورات متعدد را خواهد داد.
تعامل با شل دستگاه اندرویدی از لحاظ قوانین دستوری کاملا شبیه ترمینال در لینوکس است؛ اما دستگاه اندرویدی شما از بازهی بسیار محدودتری از دستورات پشتیبانی میکند. در صورتی که به دستورات بیشتری نیاز داشته باشید، باید Busybox نصب کنید.
شل دسترسی به دستورهای متنوعی را برای شما فراهم میآورد؛ اما استفاده از آن مستلزم روت بودن دستگاه است. از طرفی کار با شل با توجه به روت بودن دستگاه میتواند خطرناک باشد و در صورت اشتباه با مشکل مواجه شوید. پس بهتر است با احتیاط عمل کنید.
مورد مصرف: بازهی وسیعی از دستورات
مثال:
adb shell pm list packages-f
این دستور تمام اپلیکیشنهایی که در زمان اجرای آن روی دستگاه شما نصب هستند را فهرست میکند.
مثال ۲:
adb shell top
این دستور یک باینری به نام top را به اجرا در میآورد تا تمام فرآیندهایی که در گوشی در حال اجرا هستند به همراه میزان مصرف هر یک از سیپییو و رم به نمایش در بیاید.
مثالهای فوق تنها مواردی ابتدایی از کاربردهای شل هستند. باید بدانید گسترهی دستورهای شل به قدری گسترده است که روز به روز کاربردهای جدیدی برای آن پیدا میشود.
تصویربرداری از صفحه و ذخیرهی آن
این دستور که از اندروید ۴.۴ کیت کت در دسترس قرار گرفت، این امکان را به کاربر میدهد که از صفحهنمایش گوشی در فرمت mp4 تصویر تهیه کند.
adb shell screenrecord <مسیر ذخیرهی ویدیو در گوشی>
اجرای این دستور عملیات ضبط اتفاقات داخل گوشی شما را آغاز خواهد کرد. فیلم این اتفاقات در داخل گوشی ذخیره میشود. عملیات ضبط تا سه دقیقه بعد از آغاز ادامه خواهد داشت؛ مگر این که دکمههای Ctrl و C را بزنید تا ضبط قبل از سه دقیقه پایان یافته و فیلم آن ذخیره شود.
مورد مصرف: تهیهی فیلم آموزشی از انجام کاری خاص در گوشی
مثال:
adb shell screenrecord /sdcard/Demo.mp4
ویدیویی که به این روش تهیه میشود، کاملا نرم و روان اجرا خواهد شد و در حین تصویربرداری نیز هیچگونه کندی در عملکرد دستگاه به وجود نخواهد آمد.
کلام آخر
حال که با خاصیتهای ADB آشنا شدید، میتوانید در مواقع لزوم دست به کار شده و طبق این آموزش از آنها بهره ببرید. در مطالب آینده به نحوهی استفاده از همتای ADB یعنی فستبوت نیز خواهیم پرداخت.