تستعد جوجل لمعالجة واحدة من أكثر المشكلات إزعاجًا للمطورين ومستخدمي أندرويد المتقدمين، من خلال إعادة بناء نظام الاتصال اللاسلكي الخاص بأداة ADB داخل أندرويد 17، بما يجعل ربط الهاتف بالكمبيوتر أكثر استقرارًا ويقلل الحاجة إلى تكرار عملية الاقتران كلما تغيرت الشبكة أو انقطع الاتصال.
موضوعات مقترحة
وذكر موقع Android Authority أن جوجل تقدم في أندرويد 17 نسخة جديدة تحمل اسم ADB Wi-Fi 2.0، تستبدل أجزاء كبيرة من البنية البرمجية القديمة بمكتبة خفيفة طورتها الشركة بلغة Rust خصيصًا لهذه المهمة.
ما هي أداة ADB؟
تُعد Android Debug Bridge، المعروفة اختصارًا باسم ADB، واحدة من أهم أدوات تطوير أندرويد، إذ تسمح بالتحكم في الهاتف من خلال الكمبيوتر وتنفيذ أوامر برمجية وتثبيت التطبيقات وسحب الملفات وقراءة سجلات النظام واختبار التطبيقات.
ويمكن استخدام الأداة من خلال كابل USB أو عبر شبكة Wi-Fi، إلا أن الاتصال السلكي ظل الخيار الأكثر استقرارًا بالنسبة إلى كثير من المطورين، بسبب المشكلات المتكررة التي كانت تصيب الاتصال اللاسلكي.
لماذا كان ADB اللاسلكي يسبب مشكلات؟
أطلقت جوجل النسخة الأولى من ADB Wi-Fi مع أندرويد 11، واعتمدت حينها على مكتبات برمجية خارجية كبيرة لتولي مهمة اكتشاف الأجهزة على الشبكة وإدارة الاتصال بينها.
واستخدمت جوجل مكتبة mDNSResponder التابعة لأبل على أجهزة Mac، بينما اعتمدت على مكتبة Open Screen المستخدمة داخل متصفح Chrome على أنظمة ويندوز ولينكس.
ورغم أن هذه المكتبات وفرت حلاً سريعًا عند الإطلاق، فإنها لم تكن مصممة أساسًا للتعامل مع طبيعة استخدام ADB، مثل إغلاق غطاء الكمبيوتر المحمول أو الانتقال بين شبكات مختلفة أو مغادرة المكتب ثم العودة إليه.
وكان تغيير الشبكة أو فقدان الاتصال يؤدي في كثير من الأحيان إلى توقف جلسة ADB بالكامل، ما يجبر المطور على إعادة تفعيل التصحيح اللاسلكي أو إجراء الاقتران من البداية باستخدام رمز أو رمز استجابة سريع.
جوجل تتخلص من الشفرة البرمجية الزائدة
في ADB Wi-Fi 2.0، قررت جوجل التخلي عن الاعتماد على هذه المكونات الخارجية وبناء مكتبة جديدة مخصصة لإدارة الاتصال اللاسلكي.
وتتكون المكتبة الجديدة من نحو أربعة آلاف سطر برمجي فقط، مقارنة بالمكتبات القديمة الأكبر حجمًا والأكثر تعقيدًا، وهو ما يقلل احتمالات الأعطال ويجعل صيانتها وتطويرها أسهل.
وطورت جوجل المكتبة باستخدام لغة Rust، التي أصبحت الشركة تعتمد عليها بصورة متزايدة في المكونات الحساسة من أندرويد، لما توفره من حماية أفضل من أخطاء الذاكرة التي يمكن أن تسبب أعطالًا أو ثغرات أمنية.
الاتصال يعود تلقائيًا بعد انقطاع الشبكة
أهم فائدة عملية في النظام الجديد تتمثل في قدرته على متابعة حالة الشبكة باستمرار واستعادة الاتصال تلقائيًا عند العودة إلى شبكة موثوقة.
فإذا غادر المطور مكتبه حاملًا الكمبيوتر ثم عاد لاحقًا، يمكن لأداة ADB إعادة الاتصال بالهاتف من دون الحاجة إلى تكرار عملية الاقتران أو إدخال رمز جديد.
كما سيتمكن النظام من التعامل بصورة أفضل مع تبديل نقاط الاتصال داخل الشبكة نفسها، وهو أمر شائع في المكاتب والمنازل الكبيرة التي تستخدم أكثر من جهاز لتوزيع شبكة Wi-Fi.
طريقة أذكى للتعرف على الشبكات الموثوقة
كانت النسخة القديمة تعتمد بدرجة كبيرة على عنوان BSSID، وهو عنوان يرتبط بنقطة الوصول اللاسلكية نفسها، ما كان يسبب مشكلات عندما ينتقل المستخدم بين أكثر من نقطة وصول تحمل اسم الشبكة نفسه.
أما ADB Wi-Fi 2.0 فيستخدم مزيجًا من اسم الشبكة SSID وعنوان BSSID للتعرف على الشبكات الموثوقة، بما يسمح له بفهم أن نقاط الوصول المختلفة قد تكون جزءًا من الشبكة نفسها.
ويساعد هذا التغيير على منع انقطاع الاتصال داخل البيئات التي تستخدم أنظمة Mesh Wi-Fi أو عدة أجهزة توجيه لتغطية مساحة واسعة.
واجهة جديدة داخل Android Studio
لا تقتصر التحسينات على المكونات الخلفية، إذ تحصل أداة Android Studio على نافذة جديدة لربط الأجهزة لاسلكيًا.
وبدلًا من الاعتماد فقط على رمز استجابة سريع قد يستمر في الدوران من دون نتيجة إذا كانت الشبكة تمنع الاكتشاف، ستعرض النافذة الجديدة قائمة مباشرة بالأجهزة المتاحة على الشبكة المحلية.
كما ستظهر الأجهزة بأسمائها المخصصة، ما يسهل على المطور التمييز بينها عند وجود أكثر من هاتف أو جهاز لوحي متصل بالشبكة نفسها.
اعتماد أقل على الاقتران اليدوي
يهدف التحديث إلى جعل الاتصال اللاسلكي أقرب في سهولته إلى استخدام كابل USB، بحيث لا يحتاج المطور إلى التفكير في تفاصيل الشبكة أو إعادة تشغيل الخدمة باستمرار.
وبعد إتمام الاقتران لأول مرة والسماح للشبكة بالعمل كشبكة موثوقة، يفترض أن يتولى النظام مراقبة الاتصال واستعادته تلقائيًا عند الحاجة.
ولا يعني ذلك إلغاء عناصر الأمان، إذ سيظل المستخدم مطالبًا بالموافقة على الجهاز والكمبيوتر قبل السماح بالوصول، كما سيبقى التصحيح اللاسلكي ضمن خيارات المطور التي لا تكون مفعلة افتراضيًا.
فوائد جزئية للأجهزة الأقدم
تحتاج المزايا الكاملة إلى هاتف يعمل بنظام أندرويد 17، لأن جزءًا من التغييرات موجود داخل النظام نفسه ويعتمد على مكونات جديدة في الهاتف.
ومع ذلك، يمكن للمطورين الذين يستخدمون هواتف تعمل بإصدارات أقدم الاستفادة من بعض التحسينات على جانب الكمبيوتر، عند تثبيت ADB 37 وأحدث إصدارات Android Studio.
وقد يؤدي ذلك إلى تحسين اكتشاف الأجهزة وتقليل بعض مشكلات الاتصال، حتى وإن لم تتوافر جميع خصائص إعادة الاتصال التلقائي الجديدة.
لماذا اختارت جوجل لغة Rust؟
يرتبط اختيار Rust بهدفين أساسيين، هما تقليل الأخطاء البرمجية وتبسيط المكونات التي تعمل باستمرار في الخلفية وتتفاعل مع الشبكات المحلية.
وتمنع Rust كثيرًا من أخطاء إدارة الذاكرة التي تظهر عادة في اللغات التقليدية منخفضة المستوى، وهي أخطاء قد تؤدي إلى تعطل الخدمة أو فتح الباب أمام ثغرات أمنية.
كما أن بناء مكتبة صغيرة ومحددة الوظيفة يقلل الاعتماد على أكواد لم تُصمم أصلًا لتشغيل ADB، ويمنح جوجل سيطرة أكبر على تطويرها عبر أنظمة ويندوز وماك ولينكس.
تحديث صغير بتأثير كبير على المطورين
قد لا تكون ADB Wi-Fi 2.0 من المزايا التي يلاحظها المستخدم العادي داخل واجهة أندرويد 17، لكنها تمثل تحسينًا مهمًا لمن يعملون على تطوير التطبيقات أو اختبار الأجهزة بصورة متكررة.
فالوقت الذي يضيع في إعادة الاقتران وإصلاح الاتصال أو البحث عن الهاتف داخل Android Studio يمكن أن يتراكم بصورة كبيرة خلال العمل اليومي.
وإذا نجحت جوجل في تقديم مستوى الاستقرار الذي تعد به، فقد يصبح الاتصال اللاسلكي الخيار الافتراضي لدى عدد أكبر من المطورين، بدلًا من العودة إلى كابل USB كلما توقف ADB عن العمل.