Kablosuz Uyumlu

Android 8.0'da eklenen Wi-Fi Aware özelliği, desteklenen cihazların internet veya hücresel ağ erişimi olmadan Wi-Fi Aware protokolünü kullanarak doğrudan birbirine keşfetme, bağlantı ve kapsama (Android 9'da eklenen) erişmesini sağlar. Wi-Fi Alliance (WFA) Wi-Fi Aware spesifikasyonu (2.0, 3.0, 3.1 ve 4.0 sürümleri) temelinde geliştirilen bu özellik, güvenilir cihazlar ve uygulamalar arasında normalde ağ dışında olan güvenilir cihazlar ve uygulamalar arasında yüksek işleme hızlı verilerin kolayca paylaşılmasını sağlar.

Örnekler ve kaynak

Cihaz üreticilerinin, bu özelliği kullanmak için kablosuz ağ tedarikçi firması HAL'sini uygulaması gerekir. Android 14 ve sonraki sürümlerde Tedarikçi HAL arayüzü AIDL kullanılarak tanımlanır. Android 13 ve önceki sürümlerde Tedarikçi HAL arayüzü, HIDL kullanılarak tanımlanır.

Wi-Fi Aware özelliğini kullanmak için kablosuz ağ arayüzünü takip edin. Uygulanan arayüze bağlı olarak aşağıdakilerden biri kullanılabilir:

  • AIDL: hardware/interfaces/wifi/aidl
  • HIDL: hardware/interfaces/wifi/1.2 veya sonrası

AIDL ve HIDL arayüzleriyle ilişkisini görmek için eski kablosuz HAL'ye bakabilirsiniz: hardware/libhardware_legacy/+/main/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
    • Aware'i Etkinleştir: Hem özellik bayrağı hem de derleme bayrağı gerektirir
  • Wi-Fi Aware (NAN) HAL desteği (donanım yazılımı desteği anlamına gelir)

Cihaz üreticileri, bu özelliği uygulamak için kablosuz ağ arayüzünü uygular ve iki özellik bayrağını etkinleştirir:

  • device/<oem>/<device> bölgesinde bulunan BoardConfig.mk veya BoardConfig-common.mk için aşağıdaki işareti ekleyin:

    WIFI_HIDL_FEATURE_AWARE := true
    
  • device/<oem>/<device> bölgesinde bulunan device.mk ürününde, PRODUCT_COPY_FILES ortam değişkenini Wi-Fi Duyarlı ö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şlenen cihazları içerir. Wi-Fi Aware'in bu alt özelliği, Wi-Fi RTT özelliğini destekleyen cihazda koşulludır, yani cihazın hem Wi-Fi Aware hem de kablosuz RTT'yi desteklemesi gerekir. Daha fazla bilgi için Kablosuz RTT bölümüne bakın.

Aksi takdirde, bu özellik için gereken her şey AOSP'ye dahildir.

WIFI_HAL_INTERFACE_COMBINATIONS işareti belirtilirse WIFI_HIDL_FEATURE_AWARE işareti yoksayılır. Daha fazla bilgi için Kablosuz çoklu arayüz eşzamanlılığı bölümüne bakın.

MAC rastgele hale getirme

Android, Wi-Fi Aware discovery'nin (NMI) MAC adresinin ve veri arayüzlerinin (NDP'ler) 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 hale getirilir.
  • Wi-Fi Aware etkinleştirildiğinde MAC adresi, NanConfigRequest.macAddressRandomizationIntervalSec parametresi tarafından yapılandırılan düzenli bir aralıkta rastgele hale getirilmelidir. Bu süre, çerçeve tarafından varsayılan olarak 30 dakika olacak şekilde yapılandırılır.

Askıya al ve devam ettir

Android 14 ve sonraki sürümlerde Wi-Fi Aware, ayrıcalıklı uygulamaların etkin keşif oturumlarını (bu oturumlarla ilişkilendirilmiş tüm veri yolları dahil) askıya alma ve devam ettirme özelliğini destekler. Keşif oturumları askıya alınabileceği için bu özelliğin desteklenmesi, cihazların keşif oturumlarını daha hızlı devam ettirmesine ve daha az güç kullanmasına olanak tanır.

Bir cihaz bu askıya alma ve devam ettirme özelliğini destekliyorsa ayrıcalıklı bir uygulama keşif oturumunu askıya aldığında donanım yazılımı, Wi-Fi Aware oturumunu askıya alır. Keşif oturumu askıya alınmış durumdayken cihaz, bu oturumdaki etkin NDP'ler de dahil olmak üzere bu oturum için herhangi bir kare iletmez veya almaz. Tüm keşif oturumları askıya alınırsa cihaz, kablosuz ağa duyarlı kareleri iletmez veya almaz.

Ayrıcalıklı bir uygulama askıya alınmış keşif oturumunu devam ettirdiğinde çerçeve, oturumu ilişkili tüm NDP oturumları da dahil olmak üzere önceki durumuna döndürür. Askıya alınmış bir keşif oturumunu devam ettirmek, Wi-Fi Aware'i gösterip yeni bir keşif oturumu oluşturmaktan daha hızlıdır.

Cihaz üreticilerinin, keşif oturumlarını askıya alma ve devam ettirme özelliğini desteklemek için HAL ve donanım yazılımı desteği sağlaması gerekir. Ayrıntılar için IWifiNanIface.java sayfasına göz atın.

Cihaz üreticileri, birden fazla cihazda askıya alma ve devam ettirme işlemlerini senkronize etmek için bant dışı iletişimleri (örneğin, BDE) kullanabilir.

Doğrulama

Android, Wi-Fi-Aware özelliğini doğrulamak için bir dizi birim testi, Compatibility Test Suite (CTS) ve CTS Doğrulayıcı testleri sağlar. Wi-Fi Aware, tedarikçi firma Test Paketi (VTS) kullanılarak da test edilebilir.

Birim testleri

Wi-Fi Aware paket testleri şunlar kullanılarak yürütülür:

Hizmet testleri:

atest com.android.server.wifi.aware

Yönetici tarafından test edilir:

atest android.net.wifi.aware

Uyumluluk Test Paketi (CTS) testleri

Wi-Fi Aware özelliğini doğrulamak için CTS testlerini kullanın. CTS, özelliğin etkinleştirildiğini algılar ve ilgili testleri otomatik olarak dahil eder.

CTS testleri şunlar kullanılarak tetiklenebilir:

atest SingleDeviceTest

CTS Doğrulayıcı testleri

CTS Doğrulayıcı testleri, Wi-Fi Aware davranışını bir test cihazı ve bilinen iyi bir cihaz kullanarak doğrular. Testleri çalıştırmak için CTS Doğrulayıcı'yı açın ve Wi-Fi Aware Testleri başlıklı bölüme gidin.