آشنایی با دستورات ADB – بخش اول

نویسنده : سید ایوب کوکبی ۲۱ شهریور ۱۳۹۷

کاربران حرفه‌ای اندروید یعنی آن‌هایی که کارهای خفنی مثل فلش کردن گوشی، نصب کاستوم رام، اشکالی‌زدایی گوشی‌های بریک شده، روت کردن و مسائلی از این دست انجام می‌دهند معمولاً با ADB در حد کار راه‌اندازی آشنا هستند. برنامه‌نویسان اندروید نیز به صورت مستقیم یا غیرمستقیم اسم ADB را بارها شنیده‌اند و حتی ممکن است دستوراتی هم در آن وارد کرده باشند. اما حقیقتاً ADB چیست و هدف از ساخت آن چه بوده؟ این واژه سرنام Android Debug Bridge یا پل اشکال‌زدایی اندروید است. ADB یک ابزار خط فرمانی قدرتمند است که به همراه Android SDK یا به صورت مستقل روی سیستم شما نصب می‌شود.

با اتصال دستگاه‌های اندرویدی از طریق کابل USB می‌توان دستوراتی همچون حذف و نصب برنامه‌ها، کپی، بکاپ و بازیابی فایل‌ها، اجرای دستورات شل، ریست کردن گوشی، وارد شدن به حالت ریکاوری و کلی کارهای دیگر را انجام داد. این برنامه در واقع شامل دو نسخه است. یک نسخه به صورت پیش‌فرض روی دیوایس اندرویدی نصب است و دیگری روی کامپیوتر شخصی نصب می‌شود.

اندروید برپایه سیستم‌عامل لینوکس ساخته شده است. بنابراین در پایین‌ترین لایه‌اش، دستورات کرنل لینوکس را اجرا می‌کند. ابزار ADB Server (همان نسخه‌ای که روی کامپیوتر نصب می‌شود) پلی ارتباطی برای اجرای تعدادی از دستورات کرنل لینوکس است. در واقع این دستورات از طریق ADB Server به ADB گوشی منتقل شده و آنجا اجرا می‌شود.

اگر توسعه‌دهنده اندروید هستید، احتمالاً اندروید استودیو و Android SDK را نصب کرده‌اید و ADB هم به صورت خودکار نصب شده است در غیر این صورت به صورت مستقل نیز می‌توانید این ابزار را نصب کنید. راهنمایش در اینترنت هست. کافی است عبارت «نصب ADB» یا “How Install ADB” را سرچ کنید. برای نمونه اینجا در زومیت راهنمای قدم به قدم نصب آن آمده است.

بخوانید  چرا از جاوا به زبان کاتلین (Kotlin) سوئیچ کنیم؟

در این مقاله قصد دارم شما را با تعدادی از مهم‌ترین دستورات ADB آشنا کنم. (منظور از واژه «دستگاه» داخل متن هر نوع اسمارت‌فون، تبلت، فبلت، دیوایس‌های پوشیدنی و هر دستگاهی است که روی آن اندروید نصب شده است).

شناسایی دستگاه‌ها و ایمیولیتورهای متصل به سیستم:

adb devices

با اجرای این دستور تمام دستگاه‌های اندویدی که در حالت اشکال‌زدایی به سیستم متصل شده باشند فهرست می‌شود. چه از طریق USB متصل شده باشند و چه WiFi.

ارسال یک فایل به دستگاه:

adb push /home/myhome/image.png /sdcard/Download/

آرگومان اول که بعد از push قرار دارد مسیر فایلی که می‌خواهید کپی کنید را نشان می‌دهد (فایلی که روی سیستم شماست). آرگومان دوم مسیر فولدری روی دستگاه را نشان می‌دهد که می‌خواهید فایلتان آنجا کپی شود.

کپی فایل‌ها از دستگاه به سیستم

adb pull /sdcard/Download/pic.jpg /home/myhome/Desktop/pic.jpg

آرگومان اول بعد از pull مسیر کامل فایل روی دستگاه را نشان می‌دهد؛ یعنی همان فایلی که می‌خواهید به کامپیوتر کپی کنید. آرگومان دوم مسیر کامل جایی که می‌خواهید فایل آنجا کپی شود را نشان می‌دهد. دقت کنید نام فایل مقصد را می‌توانید تغییر دهید.

ریست کردن دستگاه با کمک ADB

adb reboot

انتخاب یک دستگاه مشخص

وقتی به صورت همزمان چند دستگاه مختلف به سیستم متصل باشد و دستوری را اجرا کنید با این خطا مواجه می‌شوید:

adb: error: connect failed: more than one device/emulator

شما باید دستگاهی را که می‌خواهید دستور روی آن اجرا شود مشخص کنید به این صورت:

adb -s 192.168.56.101:5555 reboot

بعد از سوئیچ s آی.پی و پورت دستگاه و سپس دستور مورد نظر را وارد کنید.

بخوانید  آموزش زبان کاتلین – درس 17 (کلاس و اشیاء)

نصب فایل apk

برای نصب فایل apk که داخل گوشی ذخیره کرده‌اید از این دستور استفاده کنید:

adb install myapplication.apk

دستور install گزینه‌های فراوان دیگری نیز دارد ولی اینجا نمی‌خواهم خیلی وارد جزئیات شوم. در پست‌های بعدی به صورت دقیق‌تر این دستور را بررسی می‌کنیم.

حذف فایل apk

برای حذف اپلیکیشن از دستگاه کافی است دستور پایین را وارد کنید:

adb uninstall com.myapp.packagename

دقت کنید، برای حذف و نصب برنامه، حتماً بایستی نام کامل پکیج را وارد کنید.

خب برای شروع کافی است. باقی دستورات بماند برای پست بعد.

سید ایوب کوکبی

نویسنده و مترجم...

0 دیدگاه

نشانی ایمیل شما منتشر نخواهد شد. بخش‌های موردنیاز علامت‌گذاری شده‌اند *