Genel bakış

Yakındaki Bağlantılar, uygulamaların ağ bağlantısından bağımsız olarak yakındaki cihazları kolayca bulup bu cihazlara bağlanmasına ve gerçek zamanlı olarak veri alışverişi yapmasına olanak tanıyan bir eşler arası ağ API'sidir.

Bazı örnek kullanım alanları:

  • Ortak beyaz tahta: Yakındaki katılımcılarla paylaşılan sanal beyaz tahtaya fikirlerinizi yazın.
  • Yerel çok oyunculu oyun: Çok oyunculu bir oyun oluşturun ve yakındaki diğer kullanıcıları katılmaya davet edin.
  • Çok ekranlı oyun: Android TV gibi yakındaki büyük ekranlı bir Android cihazda gösterilen oyunları oynamak için telefon veya tableti oyun kumandası olarak kullanın.
  • Çevrimdışı dosya aktarımları: Fotoğrafları, videoları veya diğer tüm veri türlerini hızlı bir şekilde ve ağ bağlantısı gerektirmeden paylaşın.

Giriş

Yakındaki Bağlantılar, yakındaki cihazlar arasında tamamen çevrimdışı eşler arası şekilde reklam yayınlanmasına, cihazların keşfedilmesine ve bağlantı kurulmasına olanak tanır. Cihazlar arasındaki bağlantılar, hızlı ve güvenli veri aktarımları sağlamak için yüksek bant genişliğine, düşük gecikmeye ve tam şifrelemeye sahiptir.

Bu API'nin temel amaçlarından biri basit, güvenilir ve yüksek performanslı bir platform sağlamaktır. API, Bluetooth, BLE ve kablosuz teknolojilerin bir kombinasyonunu kullanır. Bu teknolojilerin her birinin güçlü yönlerinden yararlanırken zayıf yönlerini atlar. Bu sayede, çeşitli platformlar ve işletim sistemi sürümlerinde Bluetooth ve kablosuz bağlantının değişkenliği etkili bir şekilde soyutlanarak geliştiricilerin kullanıcıları için önemli olan özelliklere odaklanması sağlanır.

API'ye genel bakış

API kullanımı, bağlantı öncesi ve bağlantı sonrası olmak üzere iki aşamada gerçekleşir.

Bağlantı öncesi aşamada reklamverenler kendilerini tanıtırken keşfedenler yakındaki reklamverenleri keşfeder ve bağlantı istekleri gönderir. Bir Keşfeden'in bir Reklamveren'e gönderdiği bağlantı isteği, her iki tarafın da bağlantı isteğini bağımsız olarak kabul etmesi (veya reddetmesi) ile sonuçlanan simetrik bir kimlik doğrulama akışını başlatır.

Bağlantı isteği her iki tarafça da kabul edildikten sonra bağlantı kurulmuş kabul edilir ve cihazlar bağlantı sonrası aşamaya geçer. Bu aşamada her iki taraf da veri alışverişinde bulunabilir.

Reklamcılık ve keşif

Reklamverenler diğer keşfedenler tarafından görünür hale gelir ve yeni bir reklamveren bulunduğunda veya kaybolduğunda keşfedenlere bildirim gönderilir.

Bağlantı kurma

Bir keşfeden kullanıcı yakındaki bir reklamverene bağlanmak istediğinde bağlantı isteğinde bulunabilir.

Bağlantı başlatma süreci her iki tarafa da bildirilir ve her iki taraf da bağlantıyı kabul etme veya reddetme fırsatı bulur.

Her iki taraf da yanıt verdiğinde sonuçtan haberdar edilir. Her iki taraf da bağlantıyı kabul ederse bağlantı kurulmuş kabul edilir ve veri aktarımı başlayabilir.

Veri alışverişi

Bağlantı kurulduktan sonra API kullanımı simetrik olur. Bu nedenle, reklamveren ve keşfeden arasında artık bir ayrım yapılmaz.

Artık her iki taraf da veri alışverişi yapabilir. Desteklenen 3 tür yük vardır:

  • Bayt: 32k ile sınırlı bayt dizileri; meta veriler veya kontrol mesajları gibi öğeler göndermek için uygundur.
  • Dosya: Her boyuttaki dosyalar. Bunlar, uygulama ile ağ arayüzü arasında işlem sınırları boyunca minimum kopyalama yapılarak aktarılır.
  • Akış: Önceden son boyutu bilinmeyen, kaydedilmiş ses/video örneğinde olduğu gibi anında oluşturulan bir veri akışı.

Alıcılar, yeni gelen veriler ve ilerleme durumu güncellemeleri, iptaller veya hatalar hakkında bilgilendirilir.

Kurulan bağlantılar tam çift yönlüdür. Bu sayede reklamverenler ve keşfedenler aynı anda veri gönderip alabilir.

Veri Toplama

Google Play Hizmetleri Yakındakiler SDK'sı kullanılırken deneyimi iyileştirmek için kullanım analizleri toplanır.

  • Performans metrikleri: Nearby SDK kullanılarak cihazlar taranıp bunlara bağlanıldığında bulma ve bağlantı gecikmesi, güvenilirlik ve işleme hızı toplanır.
  • Cihaz bilgileri: Bölgesel ve cihaza özgü dilimleri belirlemek için cihaz modeli, ülke, derleme sürümü ve uygulama paketi adı toplanıp performans metrikleriyle ilişkilendirilir.

Son kullanıcılar, Ayarlar > Google > Kullanım ve teşhis bilgileri'ne giderek bu verilerin toplanmasına izin verebilir veya bu işlemi reddedebilir.