Android 8.0'da eklenen Wi-Fi Aware özelliği, destekleyici cihazların internet veya hücresel ağ erişimi olmadan Wi-Fi Aware protokolünü kullanarak doğrudan birbirini keşfetmesini, bağlanmasını ve menzil (Android 9'da eklenmiştir) sağlar. Wi-Fi Alliance (WFA) Wi-Fi Aware spesifikasyonu (sürüm 2.0, 3.0 ve 3.1) üzerine inşa edilen bu özellik, yüksek verimli verilerin, aksi takdirde ağ dışı olan güvenilir cihazlar ve uygulamalar arasında kolayca paylaşılmasına olanak tanır.
Örnekler ve kaynak
Bu özelliği kullanmak için cihaz üreticilerinin, Android Açık Kaynak Projesi'nde (AOSP) sağlanan Wi-Fi Donanım Arayüzü Tasarım Dili'ni (HIDL) uygulaması gerekir. HIDL, arabirimlerde ve paketlerde toplanan türleri ve yöntem çağrılarını belirterek uygulamaları kolaylaştırmak için kullanılan önceki Donanım Soyutlama Katmanı (HAL) yapısının yerini alır.
Wi-Fi Aware özelliğini kullanmak için Wi-Fi HIDL'yi takip edin: donanım/arayüzler/wifi/1.2 veya üstü. Wi-Fi Aware HAL yüzeyi çok geniştir; donanım/arayüzler/wifi/1.2/README-NAN.md dosyası, çerçeve tarafından şu anda kullanımda olan alt kümeyi açıklar.
Yeni HIDL arayüzü ile nasıl bir ilişki içinde olduğunu görmek için eski Wi-Fi HAL'a başvurabilirsiniz: Hardware/libhardware_legacy/+/master/include/hardware_legacy/wifi_nan.h .
uygulama
Cihaz üreticilerinin hem çerçeve hem de HAL/donanım yazılımı desteği sağlaması gerekir:
- Çerçeve:
- AOSP kodu
- Farkındalığı Etkinleştir: Hem özellik bayrağı hem de HIDL oluşturma bayrağı gerektirir
- Wi-Fi Aware (NAN) HAL desteği (firmware desteği anlamına gelir)
Bu özelliği uygulamak için cihaz üreticileri Wi-Fi HIDL'yi uygular ve iki özellik bayrağını etkinleştirir:
device/<oem>/<device>
içinde bulunanBoardConfig.mk
veyaBoardConfig-common.mk
-common.mk'de aşağıdaki bayrağı ekleyin:WIFI_HIDL_FEATURE_AWARE := true
device/<oem>/<device>
içinde bulunandevice.mk
,PRODUCT_COPY_FILES
ortam değişkenini Wi-Fi Aware özelliği için destek içerecek şekilde değiştirin:PRODUCT_COPY_FILES += frameworks/native/data/etc/android.hardware.wifi.aware.xml:$(TARGET_COPY_OUT_VENDOR)/etc/permissions/android.hardware.wifi.aware.xml
Wi-Fi Aware, Gidiş-Dönüş Süresi (RTT) olarak da bilinen IEEE 802.11mc protokolünü kullanan eş aygıtlar arasında geçiş yapmayı içerir. Wi-Fi Aware'in bu alt özelliği, Wi-Fi RTT özelliğini destekleyen cihaza bağlıdır, yani cihazın hem Wi-Fi Aware hem de Wi-Fi RTT'yi desteklemesini gerektirir. Daha fazla ayrıntı için bkz. Wi-Fi RTT .
Aksi takdirde, bu özellik için gereken her şey AOSP'ye dahildir.
WIFI_HIDL_FEATURE_AWARE
bayrağı belirtilirse WIFI_HAL_INTERFACE_COMBINATIONS
bayrağı yoksayılır. Daha fazla bilgi için bkz. Wi-Fi çoklu arabirim eşzamanlılığı .
MAC rastgeleleştirme
Android, Wi-Fi Aware keşfinin (NMI) ve veri arayüzlerinin (NDP'ler) MAC adresinin rastgele olmasını ve cihazın gerçek MAC adresiyle aynı olmamasını gerektirir. MAC adresleri şöyle olmalıdır:
- Wi-Fi Aware etkinleştirildiğinde veya yeniden etkinleştirildiğinde rastgele belirlenir.
Wi-Fi Aware etkinleştirildiğinde, MAC adresi
NanConfigRequest.macAddressRandomizationIntervalSec
HIDL parametresi tarafından yapılandırılan düzenli aralıklarla rastgele seçilmelidir. Bu, çerçeve tarafından varsayılan olarak 30 dakika olacak şekilde yapılandırılır.
doğrulama
Android, Wi-Fi Aware özelliğini doğrulamak için bir dizi birim testi, entegrasyon testi (ACTS), Uyumluluk Test Paketi (CTS) testi ve CTS Doğrulayıcı testi sağlar. Wi-Fi Aware, Vendor Test Suite (VTS) kullanılarak da test edilebilir.
Birim testleri
Wi-Fi Aware paket testleri aşağıdakiler kullanılarak yürütülür:
Servis testleri:
atest com.android.server.wifi.aware
Yönetici testleri:
atest android.net.wifi.aware
Entegrasyon testleri (ACTS)
tools/test/connectivity/acts_tests/tests/google/wifi/aware/README.md
içinde açıklanan acts/sl4a
test paketi, işlevsellik, performans ve stres testleri sağlar.
Uyumluluk Test Paketi (CTS) testleri
Wi-Fi Aware özelliğini doğrulamak için CTS testlerini kullanın. CTS, özelliğin ne zaman etkinleştirildiğini algılar ve ilgili testleri otomatik olarak içerir.
CTS testleri aşağıdakiler kullanılarak tetiklenebilir:
atest SingleDeviceTest
CTS Doğrulayıcı testleri
CTS Verifier testleri, iki cihaz kullanarak Wi-Fi Aware davranışını doğrular: bir test cihazı ve iyi durumda olduğu bilinen bir cihaz. Testleri çalıştırmak için CTS Verifier'ı açın ve Wi-Fi Aware Tests başlıklı bölüme gidin.