"حِزمة الشبكة" هي وحدة Mainline قابلة للتحديث تضمن إمكانية تكيّف Android مع معايير الشبكة المتغيّرة وتتيح التشغيل التفاعلي مع عمليات التنفيذ الجديدة. على سبيل المثال، تتيح التحديثات التي تخصّ ميزة "اكتشاف المدخل المشروط الوصول إليه" ورمز تسجيل الدخول لنظام التشغيل Android البقاء على اطّلاع بآخر طُرز المداخل المشروطة الوصول إليها، وتتيح التحديثات التي تخصّ APF لنظام التشغيل Android توفير الطاقة على شبكة Wi-Fi عندما تصبح أنواع الحِزم الجديدة شائعة.
المكونات المضمّنة
تحتوي وحدة "حزمة الشبكة" على المكونات التالية. على الأجهزة التي تستخدم تم نقل هذه الخدمات إلى عملية مختلفة ويتم الوصول إليها من خلال واجهة AIDL مستقرة
خدمات IP:
IpClient
(المعروفة سابقًا باسمIpManager
) هي مكوّن مسؤول عن توفير طبقة IP وصيانتها. في Android 9، سبق أن تم استخدامه المعالجة المشتركة بين عدة مكوّنات مثل البلوتوث، والمعالجة المتبادلة بين العناصر مثل شبكة Wi-Fi. يحصلDhcpClient
على عناوين IP من خوادم DHCP لتتمكّن من الوصول إليه. أن يتم تعيينها إلى الواجهات.NetworkMonitor اختبارات مكوّن
NetworkMonitor
للإنترنت عند الاتصال بشبكة جديدة أو عند تعطل الشبكة، عند واكتشاف البوابات المقيدة، وعند التحقق من صحة الشبكات.تطبيق تسجيل الدخول إلى بوابة مشروطة: تطبيق مثبت مسبقًا مسؤول عن إدارة تسجيل الدخول على البوابات الأسيرة. كان هذا تطبيقًا منفصلاً منذ الإصدار Android 5.0، ولكنه يتفاعل مع
NetworkMonitor
لإعادة توجيه بعض خيارات المستخدمين إلى النظام.
المسارات المتأثّرة
في ما يلي المسارات التي تم نقلها إلى وحدة "حزمة الشبكة" باستخدام أداة إعادة ضبط الإعدادات.
خدمات IP في
frameworks/base/services/net/java/android/net/
:apf
dhcp
ip
netlink
util
(جزئيًا)
اكتشاف المدخل المشروط وتسجيل الدخول إليه في
frameworks/base/
:core/java/android/net/captiveportal/
services/core/java/com/android/server/connectivity/NetworkMonitor.java
packages/CaptivePortalLogin/*
الموقع الجغرافي الجديد للرمز الذي تم نقله هو packages/modules/NetworkStack
،
packages/modules/CaptivePortalLogin
وبعض المواقع الجغرافية المشتركة الأخرى. ما سبق
تشير المسارات إلى موقع الملفات قبل أن يتم نقلها هناك إلى Mainline.
الملفات في packages/modules/NetworkStack
و
packages/modules/CaptivePortalLogin
هي جزء من وحدة Mainline ولا يمكن
تعديلها.
تنسيق الحزمة
تحتوي وحدة "حِزمة بروتوكول الإنترنت" على المكوّنات التالية بتنسيق APK:
- خدمات الملكية الفكرية
- تسجيل الدخول إلى المدخل المشروط الوصول إليه (
com.google.android.captiveportallogin
)
تُصاحب هذه الوحدة وحدة إعدادات أذونات حِزمة Network Stack، وهي ملف APK مثبَّت مسبقًا يحدِّد الأذونات اللازمة لمكونات حِزمة Network Stack.
التبعيات
تعتمد وحدة "حِزم الشبكات" على ما يلي:
طرق @إخفاء المميزة في خادم النظام (على سبيل المثال، في
IConnectivityManager.aidl
). تم إنشاء واجهات برمجة التطبيقات هذه في@SystemApi
محمية بشكل مناسب بحيث يمكن الوصول إليها من خلال وحدة Mainline ولكن وليست تطبيقات أخرى بامتيازات خاصة (مثل استخدام إذن توقيع جديد).ربط IPCs بـ
netd
المحددة فيINetd.aidl
تم تحويل هذه الواجهة إلى تنسيق AIDL الثابتة وتخضع للتوافق. الاختبار.