اندروید

adb چیست؟ چطور نصب و استفاده کنیم؟

آیا تا به حال اپلیکیشن های آزاردهنده روی گوشی همراه خود داشته اید که بخواهید از شر آنها خلاص شوید؟ آیا تا به حال دستگاه اندروید شما با نرم افزارهای پیش فرض (بخصوص گوشی های چینی مثل شیائومی و ریل می و اوپو) پر شده و نتوانستید از شر آنها خلاص شوید؟ اگر چنین شرایطی را تجربه کرده باشید، احتمالا این را هم می دانید که برای حل این مشکلات باید گوشی روت شده باشد.

با این وجود باز کردن قفل و روت کردن دستگاه با خطرات امنیتی همراه است و حتی ممکنه دستگاه به اصطلاح بریک شده و به طور کامل از کار بیفتد. پس آیا راه دیگری وجود ندارد؟ اینجاست که دستورات ADB به دستگاه های اندروید کمک می کند.

ADB چیست؟

ADB (مخفف Android Debug Bridge) یک ابزار خط فرمان جامع برای همه دستگاه هایی است که توسط گوگل منتشر شده اند. ADB امکان برقرار ارتباط با دستگاه را با دستورات از یک سیستم سازگاری فراهم می کند که می تواند ترمینال را روی اتصال USB اجرا کند. باید USB debugging در دستگاه فعال باشد تا به درستی کار کند.

حتما این 80 اصطلاح در دنیای تکنولوژی را یاد بگیرید

ADB برای انجام هر کار قابل تصوری در دستگاه اندروید قابل استفاده است. ابزار بسیار مفیدی است به خصوص برای ایجاد نسخه پشتیبان وقتی می خواهید برنامه ها را حذف یا نصب کنید یا زمانی که لمسی گوشی کار نمی کند و نمی توانید از آن استفاده کنید.

نحوه استفاده از ADB Shell

در این قسمت نحوه راه اندازی ADB سپس استفاده از ADB shell روی کامپیوتر برای انجام انواع کارها در گوشی را توضیح خواهیم داد.

مرحله 1: ADB را تنظیم کنید.

تنظیم ADB یک فرایند بسیار ساده است و به نیازهای کاربر بستگی دارد. می توانید آن را برای دسترسی موقت از یک مکان خاص تنظیم کنید یا اینکه طوری تنظیم کنید که برای همه کاربران سیستم قابل دسترسی باشد.

مرحله 2: مطمئن شوید که ADB در حال کار است.

برای دسترسی به ADB، CMD را در پوشه platform-tools باز کنید. اگر می خواهید یک نمونه موقت باز کنید به پوشه platform-tools رفته و CMD را در نوار آدرس تایپ کنید سپس “Enter” را در صفحه کلید فشار دهید.

نحوه استفاده از ADB Shell

حالا گوشی خود را با استفاده از کابل USB به سیستم وصل کنید. پس از اتصال، دستور زیر را در پنجره CMD تایپ کرده و “Enter” را فشار دهید.

adb devices

تایپ دستور abd devices در پنجره cmd

لیستی از دستگاه های سازگار با ADB متصل به سیستم را نشان می دهد. گوشی مورد نظرتان باید در این قسمت وجود داشته باشد.

لیستی از دستگاه های سازگار با ADB متصل به سیستم را نشان می دهد

با این حال اگر گوشی را نشان داده نمی شود احتمالا باید درخواست برای دسترسی به USB debugging در گوشی را مجاز کرده باشید. روی “Allow” بزنید تا مجوز دسترسی صادر شود.

روی "Allow" بزنید تا مجوز دسترسی صادر شود.

حالا دوباره دستور بالا را اجرا کنید تا گوشی در لیست نشان داده شود.

مرحله 3: از ADB Shell استفاده کنید.

دستور زیر را تایپ کرده و Enter کنید..

adb shell

به دایرکتوری گوشی منتقل می شوید و باید با نام توسعه دستگاه مشخص شده باشد. اکنون می توانیم تمام دستورات ADB مورد نظر خود را اجرا کنیم.

برای مثال می خواهیم یک برنامه مثل برنامه ساعت گوگل (Google Clock) را حذف می کنیم که بدون استفاده از این روش غیرممکن است. برای حذف برنامه اصلی Google Clock از گوشی دستور زیر را اجرا کنید.

pm uninstall -k com.google.android.deskclock

وارد کردن دستور حذف برنامه اصلی Google Clock

همین! برنامه برای همه کاربران (در صورت وجود چند کاربر) برای همیشه حذف می شود.

در صورت وجود تنظیم چند کاربر روی دستگاه اگر بخواهید فقط یکی را حذف کنید، می توانید از پارامتر user استفاده کنید. در دستور زیر از “user 0” نوشته شده است، یعنی اینکه برنامه فقط برای کاربر 0 که معمولاً اولین کاربر دستگاه است، غیرفعال خواهد شد.

pm uninstall -k –user 0 com.google.android.deskclock

وارد کردن دستور حذف برنامه اصلی Google Clock برای یک کاربر

نکته: حذف برنامه های سیستمی برای همه کاربران توصیه نمی شود. گاهی اوقات این برنامه ها ممکنه در گوشی کدگذاری شده باشند که حذف آن می تواند سایر عملکردهای دیگر را خراب کند.

در مورد برنامه Clock ممکنه قابلیت دسترسی به منبع زمان در تمام برنامه های مرتبط با برنامه ساعت را از دست بدهید. مثل ابزارک ها، برنامه های آب و هوا و موارد دیگر.

بنابراین توصیه می کنیم فقط برنامه های سیستمی را برای کاربران منتخب حذف کنید. بدین ترتیب در صورت نیاز می توانید آنها را در آینده بازیابی کنید. از دستور زیر برای نصب مجدد برنامه حذف شده استفاده می شود.

adb shell cmd package install-existing com.google.android.deskclock

دستور نصب مجدد برنامه

“com.google.android.deskclock” نام بسته (package) برنامه Google Clock است. برای حذف سایر برنامه ها نیز کافیست نام بسته را جایگزین کنید.

نحوه به دست آوردن نام بسته برای استفاده در ADB Shell

ممکنه بخواهید برنامه های سیستمی را حذف کنید که نام بسته های آنها را نمی دانید. چند روش برای به دست آوردن نام بسته ها وجود دارد اما ساده ترین راه استفاده از فروشگاه Play Store است.

کافیست برنامه سیستمی را در Play Store باز کنید، نام بسته را مطابق شکل زیر در نوار آدرس پیدا خواهید کرد.

نحوه به دست آوردن نام بسته برای استفاده در ADB Shell

اگر برنامه سیستمی را در Play Store پیدا نمی کنید، از دستور ADB زیر برای لیست کردن همه برنامه های نصب شده استفاده کنید.

بسته های لیست pm list packages -f

حالا لیستی از همه برنامه ها دریافت خواهید کرد اما باید بدانید که هر نام بسته متعلق به کدام برنامه است.

دستورات محبوب ADB

در اینجا چند دستور اصلی و محبوب ADB آورده شده است که می توانید از آنها در موقعیت های سخت استفاده کنید. دستور mirror screen فوق العاده مفید است که امکان دسترسی و کار با دستگاه ها با صفحه نمایش مرده را فراهم می کند. خب بیایید نگاهی به بعضی از این دستورات محبوب ADB بیندازیم.

حذف برنامه های سیستمی

با این دستور آشنا شدید اما دستور زیر برای حذف هم برنامه های سیستمی و هم برنامه های جانبی است.

pm uninstall -k –user 0 <package name>

حذف برنامه های سیستمی

از دستور زیر برای حذف کامل برنامه از دستگاه برای همه کاربران استفاده کنید.

نکته: البته توصیه نمی شود.

pm uninstall -k <package name>

تهیه نسخه پشتیبان از اطلاعات

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

  • پشتیبان گیری از تنظیمات و برنامه ها

این دستور از تمام تنظیمات و برنامه های اندروید از جمله برنامه های سیستمی پشتیبان گیری می کند.

adb backup -apk -all -f backup.ab

تهیه نسخه پشتیبان از اطلاعات

  • پشتیبان گیری از تنظیمات، برنامه ها و فضای ذخیره سازی مشترک

اگر از حافظه مشترک در دستگاه خود استفاده می کنید به جای دستور بالا از این دستور استفاده کنید که از حافظه مشترک و برنامه ها و تنظیمات نسخه پشتیبان تهیه می کند.

adb backup -apk -shared -all -f backup.ab

تهیه نسخه پشتیبان از اطلاعات-1

  • پشتیبان گیری فقط از برنامه های نصب شده توسط کاربر

برای تهیه نسخه پشتیبان فقط از برنامه های نصب شده توسط خود کاربر از دستور زیر استفاده کنید. با این دستور پشتیبان گیری از تنظیمات و برنامه های سیستمی حذف می شوند.

adb backup -apk -nosystem -all -f backup.ab

تهیه نسخه پشتیبان از اطلاعات-2

  • بازیابی نسخه پشتیبان قبلی

علاوه بر ایجاد نسخه های پشتیبان جدید می توانید پشتیبان های قبلی را با استفاده از ADB به دستگاه خود برگردانید. دستور زیر برای بازیابی نسخه پشتیبان ساخته شده قبلی به کار می رود. حتما نباید نسخه پشتیبان ADB باشد، می تواند از سایر منابع نیز تهیه شده باشد، فقط باید پسوند فایل .ab و در مسیر حافظه محلی ذخیره شده باشد.

adb restore <backup path>

نکته:: پسوند فایل را حتما با نام نسخه پشتیبان وارد کنید تا این دستور به درستی کار کند.

آینه کردن صفحه نمایش گوشی روی نمایشگر کامپیوتر

با استفاده از دستورات ADB می توانید صفحه گوشی اندروید خود را روی نمایشگر کامپیوتر آینه کنید، به این ویژگی Screen Mirroring می گویند. برای زمانی مفید است که نمی توانید صفحه گوشی را ببیند. دلایل زیادی برای این وجود دارد، مانند خرابی سخت افزار، خرابی صفحه لمسی، قفل دائمی، خرابی دکمه قفل و ….

مراحل زیر برای آینه کردن صفحه گوشی در نمایشگر کامپیوتر دنبال کنید.

  • نصب ffmpeg

پیش نیازها

  • ffmpeg برای ویندوز 10 (لینک دانلود)
  • ffmpeg به عنوان یک متغیر محیطی در نصب ویندوز تنظیم شده باشد.

راهنما

آخرین نسخه موجود ffmpeg را دانلود کنید. یک فایل .zip یا .7z خواهد بود. فایل را از حالت فشرده خارج کنید. به پوشه ffmpeg رفته و سپس پوشه “bin” را باز کنید. حالا مسیر پوشه در نوار آدرس را کپی کنید.

نصب ffmpeg-1

روی آیکون Start راست کلیک کرده و “System” را انتخاب کنید.

روی آیکون Start راست کلیک کرده و "System" را انتخاب کنید

در تب سمت راست به سمت پایین بروید و روی “Advanced System Settings” کلیک کنید.

روی "Advanced System Settings" کلیک کنید.

به تب “Advanced” برای تنظیمات سیستم منتقل می شوید. روی “Environment variables” در پایین کلیک کنید.

روی "Environment variables" در پایین کلیک کنید

این قسمت را پیمایش کرده و روی “Path” سپس روی “Edit” کلیک کنید.

روی "Path" سپس روی "Edit" کلیک کنید.

یک پنجره جدید باز می شود. روی “New” در سمت راست کلیک کنید.

روی "New" در سمت راست کلیک کنید.

روی “Ok” در پایین صفحه کلیک کنید.

روی "Ok" در پایین صفحه کلیک کنید.

همین! حالا ffmpeg روی سیستم تنظیم شده است و می توانیم با استفاده از ابزارهای خط فرمان به آن دسترسی پیدا کنید.

  • آینه کردن صفحه نمایش

پیش نیازها

  • ADB در کامپیوتر راه اندازی شده باشد.

راهنما

برای این مثال یک نمونه موقت CMD را در پوشه platform-tools باز می کنیم. با این حال اگر ADB در کامپیوتر تنظیم شده باشد، می توانید این دستور را از پنجره CMD ویندوز نیز اجرا کنید. پس از باز شدن آن دستور زیر را وارد کرده و Enter کنید.

adb exec-out screenrecord –output-format=h264 – | ffplay -framerate 60 -probesize 42M -sync video –

آینه کردن صفحه نمایش-1

نکته: اندازه فایل 42 مگابایت است، این مقدار برای همه تلفن های هوشمند امروزی با وضوح تصویر HD کافی است. با این حال اگر گوشی با صفحه نمایش 4K داشته باشید، ممکنه مجبور شوید اندازه را افزایش دهید. توصیه می کنیم تا زمانی که نقطه تعادل دستگاه خود را پیدا نکردید از افزایش تا 20 مگابایت استفاده کنید.

آینه کردن صفحه نمایش-2

پس از اجرا چند ثانیه صبر کنید. ffmpeg به طور خودکار یک پنجره باز می کند که صفحه گوشی را نمایش دهد. اگر صفحه سیاه نمایش داده می شود، قفل دستگاه را باز کرده و یک یا دو برنامه را باز کنید. کمی تأخیر وجود دارد اما صفحه نمایش در چند ثانیه شروع به آینه سازی با کامپیوتر میکند.

حذف قفل صفحه

الگوی قفل یا رمز صفحه خود را فراموش کرده اید؟ نگران نباشید ADB شما را نجات خواهد داد. با این حال برای اینکه این تنظیمات روی دستگاه کار کنند باید آن را در حالت بازیابی “Recovery mode” بوت کنید. برای شروع راهنمای زیر را دنبال کنید.

نکته: متأسفانه این عملکرد فقط برای دستگاه های روت شده با USB debugging فعال کار می کند. هیچ راهی برای حذف قفل صفحه با استفاده از ADB برای دستگاه های بدون روت وجود ندارد. علاوه بر این گاهی اوقات این روش با OEM اندروید و Custom ROMS در تعارض است. عملکرد این دستور برای همه دستگاه ها تضمین نمی شود.

  • Recovery mode

دکمه پاور و دکمه کاهش صدا را نگه دارید تا گوشی ریست شود. اگر گوشی روت نشده باشد، از کلیدهای تنظیم صدا برای پیمایش بوت لودر برای برجسته کردن “Recovery mode” استفاده کنید. سپس برای انتخاب آن کلید پاور را فشار داده تا گوشی در حالت بازیابی راه اندازی شود.

اگر گوشی روت شده باشد، دستگاه را در TWRP رمزگشایی کنید و سپس روی “Recovery mode” بزنید.

همین! پس از ورود به حالت بازیابی می توانید قفل صفحه را از دستگاه خود حذف کنید.

  • استفاده از ADB برای حذف قفل صفحه

پنجره CMD را باز کرده و نمونه ADB را وارد کنید. برای این مثال از یک نمونه موقت در پوشه platform-tools استفاده خواهیم کرد.

دستگاه را با استفاده از کابل USB به سیستم وصل کنید سپس دستور زیر را اجرا کنید تا مطمئن شوید دستگاه را شناخته است.

adb devices

استفاده از ADB برای حذف قفل صفحه-1

نکته: مطمئن شوید USB debugging در دستگاه اندروید فعال است.

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

adb shell rm /data/system/gesture.key

استفاده از ADB برای حذف قفل صفحه-2

تمام شد! قفل صفحه حذف شد. دستگاه خود را دوباره راه اندازی کنید تا به سیستم عامل اندروید برگردید. گرچه از شما خواسته می شود قفل دستگاه را وارد کنید اما با هرگونه ترکیب یا الگویی کار می کند.

  • تغییر و جعل سطح و وضعیت باتری

برای چی می خواهید این کار را انجام دهید؟ چرا که نه! با استفاده از دستورات ADB می توانید سطح باتری و وضعیت فعلی آن را تغییر داده یا جعل کنید. براساس چیزی که می خواهید یکی از دستورات زیر را استفاده کنید.

  • تغییر سطح شارژ باتری

از این دستور برای تغییر و جعل میزان شارژ باتری فعلی استفاده می شود. “<n>” را با مقدار دلخواه جایگزین کنید تا سطح فعلی شارژ باتری روی آن تنظیم شود.

adb shell dumpsys battery set level <n>

تغییر سطح شارژ باتری-1

  • تغییر وضعیت باتری

همچنین می توانید وضعیت باتری را به مقادیر مختلف مانند ” unknownیا ناشناخته”، ” chargingیا در حال شارژ”، “discharging یا بدون شارژ” و ” not chargingیا عدم شارژ” تغییر دهید. حتی می توانید از این دستور برای تعیین مقدار “Full” استفاده کنید. برای ایجاد تغییرات لازم از دستور زیر استفاده کنید.

adb shell dumpsys battery set status <n>

تغییر سطح شارژ باتری-2

<n> باید با یک عدد متناسب با وضعیت باتری جایگزین شود. از راهنمای زیر برای انتخاب مقدار متناسب با نیازهای خود استفاده کنید.

  • Charging: 2
  • Discharging: 3
  • Battery Full: 5
  • Battery not charging: 4
  • Battery status unknown: 1

همین! ببه همین راحتی می توان وضعیت باتری را به مقدار دلخواه جعل کرد.

  • بازیابی تغییرات باتری

حالا می خواهید تغییرات خود را برگردانید. هنگامی که مقادیر مرتبط به باتری را جعل می کنید، اندروید دریافت وضعیت فعلی را از سخت افزار واقعی متوقف می کند. برای برگرداندن این تغییرات از دستور ADB زیر استفاده کنید.

adb shell dumpsys battery reset

بازیابی تغییرات باتری-1

  • گرفتن اسکرین شات

دستورات ADB برای گرفتن اسکرین شات از صفحه نیز به کار می روند. برای زمانی خوب است که برخی برنامه ها اجازه گرفتن اسکرین شات نمی دهند یا سخت افزار دستگاه مشکل دارد. به راحتی از دستور زیر ADB برای گرفتن اسکرین شات استفاده کنید.

adb shell screencap -p /<path>/<filename>.png

گرفتن اسکرین شات

<path> و <filename> را به ترتیب با مسیر مورد نظر برای ذخیره عکس و نام دلخواه برای آن جایگزین کنید.

نکته: برای گرفتن چند عکس از صفحه باید هر بار نام را تغییر دهید در غیر اینصورت عکس بعدی جایگزین قبلی می شود.

  • ضبط صفحه نمایش

در نهایت می توانید از دستورات ADB برای ضبط صفحه و ذخیره مستقیم فایل ویدئویی در سیستم خود استفاده کنید. دستور زیر برای شروع ضبط صفحه می باشد.

adb shell screenrecord –time-limt <time> –bit-rate <bitrate value> /<path>/<filename>.mp4

ضبط صفحه نمایش

به طور پیشفرض این دستور ADB صفحه نمایش را به مدت 3 دقیقه ضبط می کند. اگر این مقدار کافیست، می توانید متغیر

“–time-limit <time>”

را از دستور حذف کنید. اگر زمان بیشتری می خواهید، <time> را با مدت زمان دلخواه براساس ثانیه جایگزین کنید.

به طور مشابه می توانید مقدار نرخ بیت مورد نظر خود را در <bitrate value> تغییر دهید. اگر هم با مقدار پیشفرض مشکلی ندارید، می توانید متغیر

“–bit-rate <bitrate value>”

را از دستور حذف کنید.

حتما دانلود کنید: 10 تا از کاربردی ترین اپلیکیشن های اندروید در ایران

در نهایت برای توقف ضبط قبل از محدودیت زمانی تعیین شده، کلیدهای “Ctrl + C” را فشار دهید تا با باز شدن پنجره CMD ضبط متوقف شود.

میلاد حیدری

کتاب بخون، بخند و خوب باش تا همه مون در آرامش باشیم... سالهاست در زمینه آموزش رایگان در زمینه های اینترنت، کامپیوتر و دنیای تکنولوژی فعالیت می کنم و هدفم ارتقای سطح علمی هموطنان عزیز در سراسر دنیاست. سوالات خود را مطرح کنید در حد توان پاسخ خواهم داد...

نوشته های مشابه

‫2 دیدگاه ها

  1. سلام هنگام حذف یک برکامه در لی دی بی شل خطای زیر صادر میشود راه حل چیست لطفاراهنمایی کنید :.
    [DELETE FAILED INTERNAL ERROR]

  2. سلام هنگام استفاده از نرم افزار شیر کردن نت روی pc خطای adb در حال کار هست چگونه غیر فعالش کنم
    ممنونم

دیدگاهتان را بنویسید

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

دکمه بازگشت به بالا