ADB (Android Debug Bridge) ایک کثیر فعلی کمانڈ لائن یوٹیلیٹی ہے جو Android SDK کا حصہ ہے۔ یہ کمپیوٹر کو USB کیبل یا Wi-Fi کے ذریعے براہ راست Android ڈیوائس کے ساتھ تعامل کرنے کی اجازت دیتی ہے۔ ADB سے آپ ایپلیکیشنز انسٹال اور اَن انسٹال کر سکتے ہیں، فائلیں کاپی کر سکتے ہیں، شیل کمانڈز چلا سکتے ہیں، سسٹم لاگز دیکھ سکتے ہیں، اسکرین شاٹس اور اسکرین ریکارڈنگ لے سکتے ہیں، سیٹنگز منظم کر سکتے ہیں اور یہاں تک کہ خودکار ٹیسٹ بھی انجام دے سکتے ہیں۔ یہ ٹول ڈویلپرز، ٹیسٹرز اور شوقین افراد کے لیے ناگزیر ہے جو ڈیوائس پر مکمل کنٹرول چاہتے ہیں۔
اہم نکات
Android Debug Bridge (ADB) ایک کلائنٹ سرور ایپلیکیشن ہے جو تین اجزاء پر مشتمل ہے: کلائنٹ (کمپیوٹر پر چلتا ہے)، سرور (کمپیوٹر پر بیک گراؤنڈ عمل) اور ڈیمن adbd (Android ڈیوائس پر ہی چلتا ہے)۔ جب کوئی ڈویلپر یا انجینئر اسمارٹ فون کو PC سے جوڑتا ہے، ADB ایک قابل بھروسہ مواصلاتی چینل بناتا ہے جس کے ذریعے کمانڈز، فائلیں اور ڈیٹا منتقل کیا جا سکتا ہے۔
ADB کے استعمال کے اہم شعبوں میں اسٹور میں APK شائع کیے بغیر حقیقی ڈیوائس پر ایپلیکیشنز کی ڈیبگنگ، خرابی کے تجزیے کے لیے لاگز نکالنا، ٹیسٹ آٹومیشن، ڈیٹا بیک اپ، ریکوری امیجز فلیش کرنا اور روٹ رسائی حاصل کرنا شامل ہے۔ چاہے آپ کوڈ نہ لکھیں، ADB ایپلیکیشنز سے اسکرین شاٹس نکالنے، فون اسکرین سے ویڈیو گائیڈ ریکارڈ کرنے یا ناکام فرم ویئر اپ ڈیٹ کے بعد ڈیوائس بحال کرنے کے لیے مفید ہو سکتا ہے۔
ADB سپورٹ Android 2.1 (API 7) سے شروع ہونے والی تمام سرکاری Android بلڈز میں شامل ہے۔ اس کے لیے ڈیولپر سیٹنگز میں USB ڈیبگنگ آپشن کو فعال کرنا ضروری ہے۔ Android 4.2 سے شروع کرتے ہوئے، پہلے کنکشن پر ڈیوائس تصدیق مانگتی ہے: آپ کو اپنی RSA کلید کے ذریعے مخصوص کمپیوٹر کے لیے ڈیبگنگ کی اجازت دینی ہوگی۔
Windows کے لیے — Google Developers کی آفیشل ویب سائٹ سے Platform Tools ڈاؤن لوڈ کریں، آرکائیو کو C:\adb فولڈر میں نکالیں اور اس راستے کو PATH ماحولیاتی متغیر میں شامل کریں۔ ٹرمینل دوبارہ شروع کرنے کے بعد adb کمانڈ عالمی طور پر دستیاب ہو جائے گی۔
macOS کے لیے — سب سے آسان طریقہ Homebrew پیکیج مینیجر کے ذریعے ADB انسٹال کرنا ہے: brew install android-platform-tools چلائیں۔ تمام انحصار خود بخود حل ہو جائیں گے۔
Linux کے لیے — Debian / Ubuntu پر مبنی ڈسٹری بیوشنز پر: sudo apt install adb۔ تنصیب کے بعد صارف کو plugdev گروپ میں شامل کریں: sudo usermod -aG plugdev $USER اور ADB کو USB آلات تک رسائی حاصل کرنے کے لیے دوبارہ لاگ ان کریں۔
adb version کمانڈ سے تنصیب کی تصدیق کریں۔ اگر آؤٹ پٹ Android Debug Bridge کا ورژن نمبر دکھاتا ہے، تو ٹول استعمال کے لیے تیار ہے۔
پہلا کنکشن ہمیشہ adb devices کمانڈ سے شروع ہوتا ہے۔ یہ منسلک آلات اور ان کی حالت کی فہرست دکھاتا ہے۔ اگر ڈیوائس unauthorized کے طور پر دکھائی دیتی ہے، تو اسکرین ان لاک کریں اور فون پر ڈیبگنگ کی تصدیق کریں۔
adb devices
List of devices attached
emulator-5554 device
0123456789ABCD device
ایپلیکیشن انسٹال کرنا — سب سے عام کارروائیوں میں سے ایک۔ صرف APK فائل کا راستہ بتائیں:
adb install C:\apps\myapp.apk
اگر ایپلیکیشن پہلے سے انسٹال ہے لیکن اسے اپ ڈیٹ شدہ ورژن سے تبدیل کرنا ہے تو -r (replace) جھنڈا شامل کریں:
adb install -r C:\apps\myapp-v2.apk
ایپلیکیشن ان انسٹال کرنا پیکیج نام سے کیا جاتا ہے:
adb uninstall com.example.myapp
فائلیں کاپی کرنا — adb pull ڈیوائس سے کمپیوٹر پر فائل لاتا ہے، adb push ڈیوائس پر فائل اپ لوڈ کرتا ہے:
adb pull /sdcard/DCIM/screenshot.png .
adb push myfile.txt /sdcard/Documents/
انٹرایکٹو شیل — adb shell کمانڈ ڈیوائس کی کمانڈ شیل کھولتی ہے۔ اس کے اندر آپ معیاری Linux کمانڈز چلا سکتے ہیں: ls, ps, top, dumpsys, pm, am اور دیگر۔
adb shell
tissot_sprout:/ $ ls -la /sdcard/
tissot_sprout:/ $ ps | grep com.android.chrome
ایک سرگرمی شروع کرنا ADB کے ذریعے آئیکن کو دستی طور پر ڈھونڈے بغیر کسی بھی ایپلیکیشن یا اسکرین کو کھولنے کی اجازت دیتا ہے:
adb shell am start -n com.android.chrome/com.google.android.apps.chrome.Main
Logcat Android لاگنگ سسٹم ہے جو ایپلیکیشنز، سسٹم سروسز اور کرنل سے پیغامات جمع کرتا ہے۔ ڈیبگنگ کے لیے ٹول ناگزیر ہے: لاگز سے آپ سمجھ سکتے ہیں کہ ایپلیکیشن کیوں کریش ہوئی، کس طریقے نے استثنا پیدا کیا یا کوئی خاص کارروائی کتنی دیر چلتی ہے۔
فلٹرز کے بغیر سادہ آغاز — adb logcat۔ لاگ سٹریم لامتناہی ہے؛ روکنے کے لیے Ctrl+C دبائیں۔ ٹیگ کے مطابق پیغامات فلٹر کرنے کے لیے -s پیرامیٹر استعمال کریں:
adb logcat -s MainActivity:V
لاگنگ اہمیت کی سطحیں (سب سے تفصیلی سے سنگین تک): V (Verbose), D (Debug), I (Info), W (Warning), E (Error), F (Fatal)۔ ٹیگ اور سطح کا امتزاج صرف ضروری پیغامات کو نمایاں کرنے کی اجازت دیتا ہے۔
ٹیسٹ سے پہلے جمع شدہ بفر صاف کرنے کے لیے:
adb logcat -c
اور لاگز کو فائل میں محفوظ کرنے کے لیے:
adb logcat -d > app_logs.txt
-d (dump) جھنڈا موجودہ بفر آؤٹ پٹ کرتا ہے اور ٹرمینل کو بلاک کیے بغیر ختم ہوتا ہے۔ یہ آٹومیشن اسکرپٹس کے لیے آسان ہے۔
اسکرین شاٹ adb shell screencap کمانڈ سے لیا جاتا ہے۔ نتیجہ ایک فائل میں محفوظ ہوتا ہے جسے بعد میں adb pull کے ذریعے نکالا جاتا ہے:
adb shell screencap /sdcard/screen.png
adb pull /sdcard/screen.png
متبادل اور پائپنگ کے ساتھ دونوں کارروائیوں کو ایک لائن میں جوڑا جا سکتا ہے۔ عملی طور پر یہ دستاویزات اور ٹیسٹ رپورٹس بنانے میں تیزی لاتا ہے۔
اسکرین ریکارڈنگ Android 4.4+ (API 19) پر دستیاب ہے۔ ڈیفالٹ ریکارڈنگ مدت 180 سیکنڈ ہے، بٹ ریٹ 4 Mbps ہے۔ اہم کمانڈ:
adb shell screenrecord /sdcard/demo.mp4
ریکارڈنگ روکنے کے لیے Ctrl+C دبائیں۔ ویڈیو ریزولوشن ڈیوائس اسکرین ریزولوشن سے مطابقت رکھتا ہے لیکن 1080p سے زیادہ نہیں ہوتا۔ بٹ ریٹ تبدیل کرنے کے لیے --bit-rate بتائیں:
adb shell screenrecord --bit-rate 8000000 /sdcard/demo.mp4
تشخیصی کمانڈز: adb shell dumpsys تمام سسٹم سروسز کی حالت آؤٹ پٹ کرتا ہے۔ صرف بیٹری کی معلومات حاصل کرنے کے لیے:
adb shell dumpsys battery
انسٹال شدہ پیکیجز کی فہرست Package Manager کے ذریعے حاصل کی جا سکتی ہے:
adb shell pm list packages
ایپلیکیشن سیٹنگز ری سیٹ کرنا (سیٹنگز میں ڈیٹا صاف کرنے کے برابر):
adb shell pm clear com.example.myapp
Wi-Fi ڈیبگنگ ڈیوائس کو USB سے منسلک رکھنے کی ضرورت ختم کرتا ہے۔ یقینی بنائیں کہ کمپیوٹر اور ڈیوائس ایک ہی نیٹ ورک پر ہیں۔ پہلے adb tcpip 5555 چلائیں، USB منقطع کریں، پھر IP کے ذریعے جڑیں:
adb tcpip 5555
adb connect 192.168.1.100:5555
اگر ڈیوائس کا IP پتہ معلوم نہیں ہے تو کیبل منقطع کرنے سے پہلے adb shell ip addr show wlan0 کے ذریعے معلوم کریں۔
ڈیٹا بیک اپ ایپلیکیشن یا پورے سسٹم کا روٹ کے بغیر کیا جا سکتا ہے:
adb backup -apk -shared -all -system -f mybackup.ab
بیک اپ سے بحالی:
adb restore mybackup.ab
ان پٹ تخیل — adb shell input کمانڈ ٹیپ، سوائپ، کی پریس اور ٹیکسٹ ان پٹ کا تخیل کرنے کی اجازت دیتی ہے۔ یہ اضافی فریم ورک کے بغیر UI ٹیسٹ آٹومیشن کی بنیاد ہے:
adb shell input tap 500 1000
adb shell input swipe 300 500 800 500
adb shell input text "Hello, ADB!"
مختلف موڈز میں دوبارہ شروع کرنا:
adb reboot # normal reboot
adb reboot recovery # recovery mode
adb reboot bootloader # bootloader (fastboot)
فاسٹ بوٹ موڈ امیجز فلیش کرنے، بوٹ لوڈر ان لاک کرنے اور کسٹم ریکوری انسٹال کرنے تک رسائی فراہم کرتا ہے۔
جب متعدد آلات یا ایمولیٹر ایک ساتھ منسلک ہوں، ADB کو مخصوص سیریل نمبر کی ضرورت ہوتی ہے۔ adb devices کمانڈ اپنے سیریل نمبروں کے ساتھ تمام منسلک آلات کی فہرست دکھاتا ہے۔
کسی مخصوص ڈیوائس کو کمانڈ بھیجنے کے لیے -s جھنڈا استعمال کریں:
adb -s 0123456789ABCD install myapp.apk
اگر صرف ایک ڈیوائس ہے تو جھنڈا چھوڑا جا سکتا ہے۔ تاہم CI ماحول میں جہاں ایک ساتھ متعدد ایمولیٹر چلتے ہیں، سیریل نمبر بتانا لازمی ہے۔
ADB سرور کو ختم کرنا — اگر ڈیوائس کا پتہ لگنا بند ہو جائے یا خرابی دے، تو سرور کو دوبارہ شروع کرنے سے مدد ملتی ہے:
adb kill-server
adb start-server
اس کے بعد adb devices چلائیں — سرور دوبارہ شروع ہو کر ڈیوائس ڈیمنز کو درخواستیں بھیجے گا۔
| کمانڈ | وضاحت |
|---|---|
| adb devices | منسلک آلات کی فہرست دکھائیں |
| adb install |
ڈیوائس پر APK فائل انسٹال کریں |
| adb uninstall |
پیکیج نام سے ایپلیکیشن ان انسٹال کریں |
| adb shell | انٹرایکٹو کمانڈ شیل کھولیں |
| adb push |
فائل کمپیوٹر سے ڈیوائس پر کاپی کریں |
| adb pull |
فائل ڈیوائس سے کمپیوٹر پر کاپی کریں |
| adb logcat | سسٹم اور ایپلیکیشن لاگز دیکھیں |
| adb shell screencap | اسکرین شاٹ لیں |
| adb shell screenrecord | اسکرین ویڈیو ریکارڈ کریں |
| adb reboot | ڈیوائس دوبارہ شروع کریں |
| adb tcpip 5555 | Wi-Fi کے لیے ADB کو TCP/IP موڈ میں تبدیل کریں |
| adb connect |
Wi-Fi کے ذریعے ڈیوائس سے جڑیں |
اکثر پوچھے گئے سوالات
سیٹنگز → فون کے بارے میں کھولیں اور بلڈ نمبر پر 7 بار ٹیپ کریں۔ مرکزی سیٹنگز مینو پر واپس جائیں — ڈویلپر آپشنز سیکشن ظاہر ہوگا۔ اس کے اندر USB ڈیبگنگ فعال کریں۔ Android 4.2 سے شروع کرتے ہوئے، پہلی بار کمپیوٹر سے جڑتے وقت، ڈیوائس اسکرین پر RSA ڈیبگنگ کلید کی تصدیق کرنی ہوگی۔
ڈیوائس کمپیوٹر پر بھروسہ نہیں کرتی۔ فون اسکرین ان لاک کریں؛ جب USB ڈیبگنگ کی اجازت دیں ڈائیلاگ ظاہر ہو، اس کمپیوٹر کے لیے ہمیشہ اجازت دیں چیک کریں اور OK دبائیں۔ اگر ڈائیلاگ ظاہر نہ ہو تو USB کیبل منقطع اور دوبارہ جوڑیں یا adb kill-server && adb start-server چلائیں۔
ADB کو اسکرین تعامل کی ضرورت نہیں ہے۔ ڈیوائس کو USB سے جوڑیں، adb devices میں ظاہر ہونے کا انتظار کریں (اگر ڈیبگنگ پہلے سے فعال تھی) اور adb install
ADB براہ راست APK انسٹال کرتا ہے، انسٹالیشن کے دوران Google Play Protect جانچوں کو نظرانداز کرتے ہوئے، جو اشاعت سے پہلے ایپلیکیشنز کی جانچ کی اجازت دیتا ہے۔ تاہم انسٹالیشن کے بعد بھی حتمی میلویئر جانچ چلتی ہے۔ ADB کو Google اکاؤنٹ کی ضرورت نہیں ہے، جو کارپوریٹ کیوسک اور Google خدمات کے بغیر آلات کے لیے اہم ہے۔
ہاں، زیادہ تر ADB کمانڈز روٹ کے بغیر کام کرتی ہیں۔ مستثنیات وہ کمانڈز ہیں جنہیں محفوظ سسٹم پارٹیشنز تک رسائی کی ضرورت ہوتی ہے (مثال کے طور پر، بوٹ پارٹیشن کا براہ راست ڈمپ یا سسٹم فائلوں میں تبدیلی)۔ روزمرہ کے کاموں — ایپلیکیشن انسٹال کرنا، لاگنگ، اسکرین شاٹس، بیک اپ، ان پٹ تخیل — کے لیے روٹ کی ضرورت نہیں ہے۔
ADB (Android Debug Bridge) پیشہ ورانہ سطح پر Android کے ساتھ کام کرنے والے ہر فرد کے لیے ایک بنیادی ٹول ہے۔ بنیادی ایپلیکیشن انسٹالیشن سے لے کر پیچیدہ ٹیسٹ آٹومیشن اور ڈیوائس بحالی تک — ADB کمپیوٹر اور اسمارٹ فون یا ٹیبلیٹ کے درمیان تعامل کے تقریباً ہر منظر نامے کا احاطہ کرتا ہے۔
اس مضمون میں بیان کردہ کمانڈز پر عبور حاصل کرکے، آپ ٹرمینل کے ذریعے ایک Android ڈیوائس کو اعتماد سے منظم کر سکیں گے، لاگز کا تجزیہ کر سکیں گے، دستاویزات کے لیے اسکرین شاٹس لے سکیں گے، بیک اپ کر سکیں گے اور ترقی کے عمل کو تیز کر سکیں گے۔ باقاعدہ مشق اور adb help کے آؤٹ پٹ کا مطالعہ آپ کو اس طاقتور ٹول کا تجربہ کار صارف بنا دے گا۔
خلاصہ
ہم ایک موبائل ایپلیکیشن ٹرنکی تیار کریں گے
IT Sectr 2017 سے اسٹارٹ اپس اور کاروبار کے لیے iOS اور Android ایپلیکیشنز بناتا ہے۔ ہم آپ کو مشورہ دیں گے اور بہترین حل تجویز کریں گے۔
مزید پڑھیں