الربط

تشترك وحدة الربط في اتصال الإنترنت الخاص بجهاز Android مع أجهزة العميل الأخرى المتصلة ، والتي يمكنها الاتصال بأجهزة الربط عبر Wi-Fi أو USB أو Bluetooth أو Ethernet. وتشمل هذه الوحدة عنصر الربط (USB، نقطة وصول واي فاي، بلوتوث، الخ) والأقاليم التابعة لها (التفاعل مع الربط استحقاق، IpServer ، و offloadController ). هذه الوحدة قابلة للتحديث ، مما يعني أنها يمكن أن تتلقى تحديثات للوظائف خارج دورة إصدار Android العادية.

تمكّن وحدة الربط الشركات المصنعة للمعدات الأصلية في جميع أنحاء نظام Android البيئي من استخدام تطبيق مرجعي قياسي واحد يحقق الفوائد التالية.

  • يحصل المستخدمون النهائيون على تجربة متسقة عبر أجهزة Android وإصلاحات لمشكلات التشغيل التفاعلي من خلال تحديثات الوحدة.

  • يمكن لمصنعي المعدات الأصلية تلبية متطلبات الناقل مع تقليل تكاليف التخصيصات الفردية (حيث لا يحتاجون إلى تطبيقات مختلفة لنفس المتطلبات بطرق مختلفة).

دعم IPv4 و IPv6

تدعم وحدة الربط مكدس IPv4 و IPv6 المزدوج.

  • بالنسبة لشبكات IPv4 ، تقوم الوحدة بإعداد ترجمة عنوان الشبكة (NAT) وتعتمد بروتوكول تكوين المضيف الديناميكي (DHCP) لتعيين عنوان IP.

  • بالنسبة لشبكات IPv6 ، تتبنى الوحدة التكوين التلقائي لعنوان IPv6 عديم الحالة (SLAAC) لتعيين عنوان IP.

حدود الوحدة

في الروبوت 11، تتحرك وحدة الربط الملفات الروبوت 10 التالية ل packages/modules/Tethering .

  • frameworks/base/services/core/java/com/android/server/connectivity/Tethering.java
  • frameworks/base/services/core/java/com/android/server/connectivity/tethering/
  • frameworks/base/services/core/java/com/android/server/NetworkManagementService.java
  • frameworks/base/services/net/java/android/net/ip/{InterfaceController,IpServer,RouterAdvertisementDaemon}.java
  • frameworks/base/services/net/java/android/net/{netlink,dhcp}/*
  • frameworks/base/services/net/java/android/net/util/{InterfaceSet,InterfaceParams,NetdService,PrefixUtils,SharedLog,VersionedBroadcastListener}.java
  • frameworks/base/core/java/android/net/{ITetheringEventCallback,ITetheringStatsProvider}.aidl
  • frameworks/base/core/java/android/net/{NetworkUtils,util/IpUtils}.java
  • frameworks/base/core/java/com/android/internal/util/{BitUtils,IndentingPrintWriter,State,StateMachine}.java
  • frameworks/base/core/java/com/android/server/connectivity/MockableSystemProperties.java
  • frameworks/base/core/java/android/os/INetworkManagementService.aidl
  • frameworks/base/core/java/android/bluetooth/BluetoothPan.java
  • frameworks/base/services/core/jni/com_android_server_connectivity_tethering_OffloadHardwareInterface.cpp
  • packages/apps/Settings/src/com/android/settings/wifi/tether/TetherService.java
  • packages/apps/Settings/src/com/android/settings/network/TetherProvisioningActivity.java

تنسيق الوحدة

وحدة الربط ( com.google.android.tethering ) بتنسيق APEX ومتاح لأجهزة تشغيل الروبوت 11 أو أعلى.

تبعيات الوحدة النمطية

تحتوي وحدة الربط على التبعيات التالية:

  • طرق API العامة والنظام في خادم النظام
  • واجهة AIDL IPCs مستقرة مع خادم النظام
  • tetheroffload HIDL (المعرفة في hardware/interfaces/tetheroffload/ )
  • خادم DHCP (جزء من وحدة Network Stack)

التخصيص

لا تدعم وحدة الربط التخصيص.

اختبارات

يتحقق Android Compatibility Test Suite (CTS) من وظائف وحدة الربط.