Kullanıcı gizliliğine saygı göstermek için, uygulama geliştiricilerin yalnızca konum izinleri. Genellikle yaklaşık bir genel konuma ihtiyaç duyan uygulamalar ağ konumunu (FLP) kullanır, çünkü hızlıdır ve daha az güç tüketir.
Android tabanlı mobil cihazlara kıyasla otomotiv uygulamalarındaki ağ konumu daha zorlayıcı olabilir. İki Android API'si kullanabilirsiniz:
LocationManager API, tercih edilen konum bilgisini açık bir şekilde tanımlamanızı gerektirir. konum sağlayıcı
Google Play Services API, şunları yapmanız için daha basit bir yol sunar: Artık Çok Kaynaklı Konum Sağlayıcı (Fused Location Provider) teknolojisiyle konumla çalışma (FLP).
Birçok otomotiv uygulaması, FLP yerine Google Play Hizmetleri (GPS) API'sini LM. FLP, konum isteğine göre en uygun konum sağlayıcıyı seçer tarafından ihtiyaç duyulan ölçütler ve politikalar (güç ve doğruluk).
Bunun yerine, verileri açıkça isteme ve
LM'de NETWORK_PROVIDER
ve
Daha hassas konumlar için GPS_PROVIDER
android.permission.ACCESS_FINE_LOCATION
izin verir. API 31'de FUSED_PROVIDER
,
önceden yalnızca GPS API aracılığıyla erişilebilecek
LM tarafından konum sağlayıcı olarak kullanılabilir. Daha basit bir
uygulama yönetimi,
FusedLocationProvider.java
.
GPS_PROVIDER
yalnızca genel izin haklarıyla kullanılabilir, ancak
beklentileri karşılamak için doğruluğu yapay olarak azalttığından
Android telefonları hedefleyen geliştiriciler için pek bir anlam ifade etmemektedir çünkü
ve genel bir konum elde etmek için genellikle daha yavaş kullanılabilir.
Otomotivdeki ağ konumu
Android telefonlarda (Google Mobil Hizmetleri bulunan) kullanılan NETWORK_PROVIDER
yalnızca yakındaki baz istasyonlarına göre konum belirlemeden
kablosuz erişim noktalarını, hatta Bluetooth (BT) işaretçilerini de kullanabilir. Kullanım
NETWORK_PROVIDER
için veri bağlantısı gerekebilir.
Otomotiv uygulamaları için cihaz kısıtlamaları farklıdır. GNSS normalde etkin olduğu için artan güç ve pil kullanımı nedeniyle ceza almamaktadır. Kullanıcı IVI çalışma süresinden ödün verilmez. Veri alışverişini en aza indirmeye çalışıyoruz yeni bir ileti dizisidir.
Bu nedenle birçok uygulama, FLP yerine doğrudan LM yerine Play API'den FLP kullanır yapabilecek en iyi konum sağlayıcıyı kullanarak akıllı olanı otomatik olarak yapar. konum isteği ölçütlerini/politikalarını (yani güç ve doğruluk) karşılama işin mutfağını öğrenin.
Mobil cihazların aksine, araçlar nadiren bir yerden başka bir yere atlayıp başka bir tane. Aracın konumu çoğu zaman kaputun altında bilinir.
Ağ konumu sağlayıcı
Çoğu araç, gerekli bilgileri almak için gerekli telefon API'lerini uygulamaz hücre kimliğinde (ve sinyal gücünde) kullanılabilir. Sonuç olarak, verileri en aza indirdiğimiz için NLP'nin ek işlevsel uygulaması sağlanmamıştır.
Çok kaynaklı konum sağlayıcı
Mobil FLP, ağ ve GPS sağlayıcılarını akıllı bir şekilde kullanmanın yanı sıra,
ve sinyalleri daha da iyileştirmek için diğer sensörlerden gelen bilgileri
ve konum kalitesine katkıda bulunur. Otomobil FLP'nin şu anki uygulanmasıyla birlikte
diğer el yukarıda bahsi geçen varsayımlardan ve kullanımlardan yararlanmaktadır.
GPS_PROVIDER
her zaman temel kaynak olarak kullanılıyor. Pozisyonları uyumlu bir şekilde
kullanarak daha doğru sonuçlar elde edebilirsiniz. Örneğin,
Müşteriye yaklaşık konumlar sağlandığında.
Bunun gibi nadir görülen durumlarda, toplantı için normalden daha uzun bir süre kullanılabilir olması gerekir. Örneğin, bir araç veya aracı ilk kez konum alt sistemi kullanılır veya çekildikten sonra kullanılır.
Mobil ve otomotiv kullanımlarını hedefleyecek uygulamalar tasarlama
Bunu yapmayan mobil ve otomotiv cihazlarını hedefleyen uygulamaların
daha yüksek kalitede bir istek gerektirir
android.permission.ACCESS_COARSE_LOCATION
kullanabilir ve FLP'yi kullanmaya devam edebilir
(kullanılabilir olduğunda) Alternatif olarak, son çare olarak doğrudan GPS_PROVIDER
kullanın
aynı izinlere sahip olursunuz. Çerçeve, temel verilerin kesinliğini azaltır
GNSS'nin pozisyonu, API beklentileriyle örtüşüyor. Daha fazla bilgi edinmek için Doğruluk bölümüne bakın.
Ayrıca bu uygulamalar
android.hardware.location.network
bu özelliği isteğe bağlı olarak ayarlayabilirsiniz.
Örnek:
<uses-feature android:name="android.hardware.location.network" android:required="false" />
Bu yaklaşım, farklı sektörlerdeki cihazlarla maksimum uyumluluk sağlar Bu nedenle, uygulama kullanılabilirliğiyle ilgili kodlar açısından herhangi bir fark olmadan daha fazla bilgi edindiniz.