ADB (Android Debug Bridge) هي أداة مساعدة متعددة الاستخدامات تعمل عبر سطر الأوامر، وهي جزء من Android SDK. تتيح للكمبيوتر التفاعل مباشرة مع جهاز Android عبر كابل USB أو عبر Wi-Fi. باستخدام ADB يمكنك تثبيت التطبيقات وإلغاء تثبيتها، نسخ الملفات، تشغيل أوامر shell، عرض سجلات النظام، التقاط لقطات الشاشة وتسجيل الشاشة، إدارة الإعدادات وحتى إجراء اختبارات آلية. الأداة لا غنى عنها للمطورين والمختبرين والهواة الراغبين في الحصول على تحكم كامل بالجهاز.
أهم النقاط
Android Debug Bridge (ADB) هو تطبيق خادم-عميل يتكون من ثلاثة مكونات: عميل (يعمل على الكمبيوتر)، خادم (عملية خلفية على الكمبيوتر)، وبرنامج خفي adbd (يعمل على جهاز Android نفسه). عندما يقوم مطور أو مهندس بتوصيل هاتف ذكي بالكمبيوتر، ينشئ ADB قناة اتصال موثوقة يمكن من خلالها نقل الأوامر والملفات والبيانات.
تشمل حالات الاستخدام الرئيسية لـ ADB تصحيح أخطاء التطبيقات على جهاز حقيقي دون الحاجة لنشر APK في متجر، استخراج السجلات لتحليل الأخطاء، أتمتة الاختبارات، النسخ الاحتياطي للبيانات، وميض صور الاستعادة والحصول على صلاحيات الجذر. حتى إذا كنت لا تكتب كوداً، يمكن أن يكون ADB مفيداً لاستخراج لقطات الشاشة من التطبيقات، تسجيل دليل فيديو من شاشة الهاتف أو استعادة الجهاز بعد تحديث برنامج ثابت فاشل.
دعم ADB مدمج في جميع إصدارات Android الرسمية بدءاً من الإصدار 2.1 (API 7). يتطلب تفعيل خيار تصحيح أخطاء USB في إعدادات المطور. بدءاً من Android 4.2، يطلب الجهاز تأكيداً عند أول اتصال: يجب السماح بتصحيح الأخطاء للكمبيوتر المحدد باستخدام مفتاح RSA الخاص به.
لنظام Windows — قم بتحميل Platform Tools من الموقع الرسمي لمطوري Google، استخرج الأرشيف إلى المجلد C:\adb وأضف هذا المسار إلى متغير البيئة PATH. بعد إعادة تشغيل الطرفية، سيكون الأمر adb متاحاً بشكل عام.
لنظام macOS — أسهل طريقة هي تثبيت ADB عبر مدير الحزم Homebrew: قم بتشغيل 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 (استبدال):
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/
Shell تفاعلي — الأمر 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 ميجابت/ثانية. الأمر الرئيسي:
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 يتيح محاكاة اللمسات والتمرير وضغط الأزرار وإدخال النص. هذا هو الأساس لأتمتة اختبارات واجهة المستخدم دون أطر عمل إضافية:
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)
وضع 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 | تحويل ADB إلى وضع TCP/IP لـ Wi-Fi |
| adb connect |
الاتصال بجهاز عبر Wi-Fi |
الأسئلة الشائعة
افتح الإعدادات → حول الهاتف واضغط على رقم الإصدار 7 مرات. عد إلى القائمة الرئيسية للإعدادات — سيظهر قسم خيارات المطور. بداخله، فعّل تصحيح أخطاء USB. بدءاً من Android 4.2، عند الاتصال بالكمبيوتر لأول مرة، يجب تأكيد مفتاح RSA لتصحيح الأخطاء على شاشة الجهاز.
الجهاز لا يثق بالكمبيوتر. افتح شاشة الهاتف، عندما يظهر مربع حوار السماح بتصحيح USB، ضع علامة السماح دائماً لهذا الكمبيوتر واضغط موافق. إذا لم يظهر الحوار، افصل وأعد توصيل كابل USB أو نفذ adb kill-server && adb start-server.
ADB لا يتطلب تفاعلاً مع الشاشة. قم بتوصيل الجهاز عبر USB، انتظر ظهوره في adb devices (إذا كان تصحيح الأخطاء مفعّلاً مسبقاً) ونفذ adb install <مسار_apk>. لفتح التطبيق استخدم adb shell am start -n <حزمة>/<نشاط>. إذا لم يتم تفعيل تصحيح الأخطاء مسبقاً، استعادة الوصول بدون شاشة أصعب بكثير — ستحتاج إلى استعادة مخصصة.
ADB يقوم بتثبيت APK مباشرة، متجاوزاً فحوصات Google Play Protect أثناء التثبيت، مما يتيح اختبار التطبيقات قبل النشر. لكن الفحص النهائي للبرامج الضارة لا يزال يعمل بعد التثبيت. ADB لا يتطلب حساب Google، وهو أمر مهم للأكشاك المؤسسية والأجهزة بدون خدمات Google.
نعم، الغالبية العظمى من أوامر ADB تعمل بدون جذر. الاستثناءات هي الأوامر التي تتطلب الوصول إلى أقسام النظام المحمية (مثل التفريغ المباشر لقسم الإقلاع أو تعديل ملفات النظام). للمهام اليومية — تثبيت التطبيقات، التسجيل، لقطات الشاشة، النسخ الاحتياطي، محاكاة الإدخال — لا حاجة للجذر.
ADB (Android Debug Bridge) هي أداة أساسية لكل من يعمل مع Android على المستوى الاحترافي. من التثبيت الأساسي للتطبيقات إلى أتمتة الاختبارات المعقدة واستعادة الأجهزة — يغطي ADB تقريباً أي سيناريو للتفاعل بين الكمبيوتر والهاتف الذكي أو الجهاز اللوحي.
بإتقان الأوامر الموصوفة في هذه المقالة، ستتمكن من إدارة جهاز Android بثقة عبر الطرفية، تحليل السجلات، التقاط لقطات شاشة للتوثيق، إجراء النسخ الاحتياطي وتسريع عملية التطوير. الممارسة المنتظمة ودراسة مخرجات adb help ستجعلك مستخدماً متمرساً لهذه الأداة القوية.
الملخص
سنقوم بتطوير تطبيق جوال جاهز
تقدم IT Sectr تطبيقات iOS وAndroid للشركات الناشئة والشركات منذ عام 2017. سوف نقدم لك النصح ونقترح أفضل حل.