اعتبارًا من 27 آذار (مارس) 2025، ننصحك باستخدام android-latest-release بدلاً من aosp-main لإنشاء AOSP والمساهمة فيه. لمزيد من المعلومات، يُرجى الاطّلاع على التغييرات في AOSP.
تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
توضّح هذه الصفحة كيفية التحكّم في شبكة Wi-Fi على جهاز Cuttlefish.
استخدام Wmediumd
تستخدم ميزة Cuttlefish Wi-Fi أداة المحاكاة Wmediumd
لمحاكاة الوسيط اللاسلكي. يدير Wmediumd عملية إرسال حزم Wi-Fi
بين مثيلَي Cuttlefish أو بين مثيل Cuttlefish ومثيل
OpenWRT. تم تنفيذ Wmedium لتطبيق Cuttlefish في
/platform/external/wmediumd/.
للتحكّم في واجهة Wmediumd، استخدِم أداة WmediumdService
(Android 14 أو إصدار أحدث) أو wmedium_control
(Android 13 أو إصدار أقدم).
WmediumdService
بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو إصدار أحدث، استخدِم
WmediumdService للتحكّم في أداة Wmedium. لمعرفة تفاصيل عن كيفية التحكّم في
هذه الخدمة باستخدام واجهة برمجة التطبيقات REST API أو واجهة سطر الأوامر (CLI)، يُرجى الاطّلاع على Cuttlefish: التحكّم في البيئة.
يسرد الجدول التالي الطرق الواردة في WmediumdService. للحصول على معلومات تفصيلية
عن الطرق، يُرجى الاطّلاع على
wmediumd.proto.
الطرق
الوصف
ListStations
إدراج جميع المحطات المرتبطة بخدمة Wmediumd
LoadConfig
تحميل إعدادات Wmediumd باستخدام ملف معيّن
ReloadConfig
إعادة تحميل ملف إعدادات Wmediumd المحمَّل حاليًا
SetCivicloc
اضبط الموقع الجغرافي (مثل العنوان البريدي)
للمحطة المحدّدة.
SetLci
اضبط مقياس LCI (خط العرض وخط الطول والارتفاع) للمحطة
المحدّدة.
SetPosition
اضبط موضع المحطة في مساحة ثنائية الأبعاد.
SetSnr
اضبط قيمة نسبة الإشارة إلى الضوضاء (SNR) (من 0 إلى 255) بين محطتَين.
SetTxpower
اضبط طاقة الإرسال (TX power) للمحطة المحدّدة.
StartPcap
ابدأ بتسجيل جميع اللقطات التي يتم بثها وتخزينها
في ملف .pcap.
StopPcap
أوقِف عملية التقاط الحِزم الحالية وأكمِلها.
wmediumd_control
بالنسبة إلى الأجهزة التي تعمل بالإصدار 13 من Android أو الإصدارات الأقدم، استخدِم أداة
wmediumd_control للتحكّم في الوسيط اللاسلكي في أجهزة Cuttlefish.
يسرد الجدول التالي الأوامر الفرعية في wmediumd_control.
الأوامر الفرعية
الوصف
list_stations
إدراج جميع المحطات المرتبطة
بـ Wmediumd
reload_config[CONFIG_FILE_PATH]
أعِد تحميل إعدادات Wmediumd باستخدام
CONFIG_FILE_PATH
. في حال حذف
CONFIG_FILE_PATH
، أعِد تحميل ملف الإعدادات المثبَّت حاليًا.
set_civicloc MAC_ADDR
CIVICLOC
اضبط الموقع الجغرافي (مثل
العنوان البريدي)
للمحطة المحدّدة.
set_lci MAC_ADDR
LCI
اضبط مقياس LCI (خط العرض وخط الطول والارتفاع) للمحطة المحدّدة.
set_position MAC_ADDR
X_POSITIONY_POSITION
اضبط موضع المحطة في
فضاء ثنائي الأبعاد.
set_snr MAC_ADDR1
MAC_ADDR2SNR_VALUE
اضبط قيمة نسبة الإشارة إلى الضوضاء (SNR)
(من 0 إلى 255) بين محطتَين.
start_pcap
PCAP_FILE_PATH
ابدأ في تسجيل كل اللقطات
المُرسَلة إلى الهواء وتخزينها في ملف
.pcap.
stop_pcap
أوقِف عملية التقاط الحزم الحالية واختِمها.
استخدام OpenWRT
تتيح ميزة Wi-Fi في Cuttlefish استخدام OpenWRT لإنشاء نقاط وصول افتراضية لشبكة Wi-Fi. تم تنفيذ OpenWRT لنظام Cuttlefish في الإصدار
platform/external/openwrt-prebuilts/.
للاتصال بـ OpenWRT، استخدِم المعلومات الواردة في الجدول التالي. إذا
لم تضِف أي خيارات عند تشغيل Cuttlefish، يكون رقم تعريف الجهاز هو
cvd-1، وعنوان IP لشبكة OpenWRT WAN هو 192.168.94.2 أو 192.168.96.2.
نوع الاتصال
الوجهة
بروتوكول النقل الآمن (SSH)
root@OPENWRT_WAN_IP_ADDRESS
صفحة ويب
https://localhost:1443/devices/DEVICE_ID/openwrt
صفحة ويب (قديمة)
https://OPENWRT_WAN_IP_ADDRESS
OpenwrtControlService
بالنسبة إلى الأجهزة التي تعمل بالإصدار 14 من نظام التشغيل Android أو إصدار أحدث، يمكنك استخدام خدمة
OpenwrtControlService للتحكّم في نقاط اتصال Wi-Fi الافتراضية وضبطها. لمعرفة تفاصيل عن كيفية التحكّم في هذه الخدمة باستخدام واجهة برمجة التطبيقات REST API أو سطر الأوامر، يُرجى الاطّلاع على مقالة Cuttlefish: التحكّم في البيئة.
يسرد الجدول التالي الطرق الواردة في OpenwrtControlService. للحصول على معلومات تفصيلية
عن الطرق، يُرجى الاطّلاع على
openwrt_control.proto.
الطرق
الوصف
LuciRpc
أرسِل طلب RPC إلى واجهة الويب Luci في OpenWRT.
OpenwrtIpAddr
الحصول على عنوان IP لشبكة WAN في OpenWRT استخدِم هذا العنوان لربط مثيل
OpenWRT من خلال SSH أو واجهة ويب.
يخضع كل من المحتوى وعيّنات التعليمات البرمجية في هذه الصفحة للتراخيص الموضحّة في ترخيص استخدام المحتوى. إنّ Java وOpenJDK هما علامتان تجاريتان مسجَّلتان لشركة Oracle و/أو الشركات التابعة لها.
تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-27 (حسب التوقيت العالمي المتفَّق عليه)"],[],[],null,["# Wi-Fi\n\nThis page describes how to control Wi-Fi on a Cuttlefish device.\n\nUse Wmediumd\n------------\n\nThe Cuttlefish Wi-Fi feature uses Wmediumd, a simulation tool,\nto simulate the wireless medium. Wmediumd manages the delivery of Wi-Fi packets\nbetween two Cuttlefish instances or between a Cuttlefish instance and an\nOpenWRT instance. Wmedium for Cuttlefish is implemented in\n[`/platform/external/wmediumd/`](https://cs.android.com/android/platform/superproject/+/android-latest-release:external/wmediumd/).\n\nTo control the Wmediumd interface, use the `WmediumdService`\n(Android 14 or higher) or `wmedium_control`\n(Android 13 or lower) tool.\n\n### WmediumdService\n\nFor devices running Android 14 or higher, use\n`WmediumdService` to control the Wmedium tool. For details on how to control\nthis service using the REST API or the command line interface (CLI), see\n[Cuttlefish: Environment Control](/docs/devices/cuttlefish/control-environment).\n\nThe following table lists the methods in `WmediumdService`. For detailed\ninformation about the methods, see\n[`wmediumd.proto`](https://cs.android.com/android/platform/superproject/+/android-latest-release:external/wmediumd/wmediumd_server/wmediumd.proto).\n\n| Methods | Description |\n|----------------|-------------------------------------------------------------------------------|\n| `ListStations` | List all stations attached to Wmediumd. |\n| `LoadConfig` | Load Wmediumd configuration with a given file. |\n| `ReloadConfig` | Reload currently loaded Wmediumd configuration file. |\n| `SetCivicloc` | Set civic location (for example, postal address) of the specific station. |\n| `SetLci` | Set LCI (latitude, longitude, altitude) of the specific station. |\n| `SetPosition` | Set position of the station in two-dimensional space. |\n| `SetSnr` | Set signal-to-noise ratio (SNR) value (0-255) between two stations. |\n| `SetTxpower` | Set transmit power (TX power) of the specific station. |\n| `StartPcap` | Start capturing all frames transmitted to air and store it to a `.pcap` file. |\n| `StopPcap` | Stop and finalize current packet capture. |\n\n### wmediumd_control\n\n| **Note:** From Android 14, `WmediumdService` replaces the `wmediumd_control` tool.\n\nFor devices running Android 13 or lower, use the\n`wmediumd_control` tool to control the wireless medium in Cuttlefish devices.\nThe following table lists subcommands in `wmediumd_control`.\n\n| Subcommands | Description |\n|----------------------------------------------------------------------------------------------------------------------------------|---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------|\n| `list_stations` | List all stations attached to Wmediumd. |\n| `reload_config` \u003cvar translate=\"no\"\u003e[\u003ccode translate=\"no\" dir=\"ltr\"\u003eCONFIG_FILE_PATH\u003c/code\u003e] \u003c/var\u003e | Reload Wmediumd configuration with \u003cvar translate=\"no\"\u003eCONFIG_FILE_PATH \u003c/var\u003e. If \u003cvar translate=\"no\"\u003e CONFIG_FILE_PATH\u003c/var\u003e is omitted, reload currently loaded config file. |\n| `set_civicloc `\u003cvar translate=\"no\"\u003eMAC_ADDR \u003c/var\u003e` `\u003cvar translate=\"no\"\u003eCIVICLOC\u003c/var\u003e | Set civic location (for example, postal address) of the specific station. |\n| `set_lci `\u003cvar translate=\"no\"\u003eMAC_ADDR \u003c/var\u003e` `\u003cvar translate=\"no\"\u003eLCI\u003c/var\u003e | Set LCI (latitude, longitude, altitude) of the specific station. |\n| `set_position `\u003cvar translate=\"no\"\u003eMAC_ADDR \u003c/var\u003e` `\u003cvar translate=\"no\"\u003eX_POSITION\u003c/var\u003e` `\u003cvar translate=\"no\"\u003eY_POSITION\u003c/var\u003e | Set position of the station in two-dimensional space. |\n| `set_snr `\u003cvar translate=\"no\"\u003eMAC_ADDR1 \u003c/var\u003e` `\u003cvar translate=\"no\"\u003eMAC_ADDR2\u003c/var\u003e` `\u003cvar translate=\"no\"\u003eSNR_VALUE\u003c/var\u003e | Set signal-to-noise ratio (SNR) value (0-255) between two stations. |\n| `start_pcap `\u003cvar translate=\"no\"\u003ePCAP_FILE_PATH \u003c/var\u003e | Start capturing all frames transmitted to air and store it to a `.pcap` file. |\n| `stop_pcap` | Stop and finalize current packet capture. |\n\nUse OpenWRT\n-----------\n\nThe Cuttlefish Wi-Fi feature supports using OpenWRT for virtualizing Wi-Fi\naccess points (APs). The OpenWRT implementation for Cuttlefish is at\n[`platform/external/openwrt-prebuilts/`](https://cs.android.com/android/platform/superproject/+/android-latest-release:external/openwrt-prebuilts/).\n\nTo connect to OpenWRT, use the information in the following table. If you\ndon't append any options when launching Cuttlefish, the device ID is\n`cvd-1`, and the OpenWRT WAN IP address is `192.168.94.2` or `192.168.96.2`.\n\n| Connection type | Destination |\n|------------------|--------------------------------------------------------------------------------|\n| SSH | `root@`\u003cvar translate=\"no\"\u003eOPENWRT_WAN_IP_ADDRESS\u003c/var\u003e |\n| Webpage | `https://localhost:1443/devices/`\u003cvar translate=\"no\"\u003eDEVICE_ID\u003c/var\u003e`/openwrt` |\n| Webpage (legacy) | `https://`\u003cvar translate=\"no\"\u003eOPENWRT_WAN_IP_ADDRESS\u003c/var\u003e |\n\n### OpenwrtControlService\n\nFor devices running Android 14 or higher, to control\nand configure virtualized Wi-Fi APs, use the\n`OpenwrtControlService` service. For details on how to control this service\nusing the REST API or the CLI, see\n[Cuttlefish: Environment Control](/docs/devices/cuttlefish/control-environment).\n\nThe following table lists the methods in `OpenwrtControlService`. For detailed\ninformation about the methods, see\n[`openwrt_control.proto`](https://cs.android.com/android/platform/superproject/+/android-latest-release:device/google/cuttlefish/host/commands/openwrt_control_server/).\n\n| Methods | Description |\n|-----------------|-------------------------------------------------------------------------------------------------------------|\n| `LuciRpc` | Send RPC call to the Luci web interface in OpenWRT. |\n| `OpenwrtIpAddr` | Get OpenWRT WAN IP address. Use this address to connect an OpenWRT instance through SSH or a web interface. |"]]