Android için Navigasyon SDK'sı, Android için Haritalar SDK'sına navigasyon özellikleri ekler. Google Haritalar destekli Android uygulamanızda navigasyon özellikleri gerekiyorsa Android için Navigasyon SDK'sı kullanılmalıdır.
Bununla birlikte, Android için Haritalar SDK'sındaki çoğu işlev, Android için Navigasyon SDK'sında da aynı şekilde çalışır. Hangi SDK bağımlılığını kullanırsanız kullanın, aynı com.google.android.gms.maps paketini kullanarak bunlara erişebilirsiniz.
Bu nedenle, uygulamanız daha önce Android için Haritalar SDK'sına bağlıysa uygulamanızın mevcut işlevselliğini etkilemeden bağımlılığını Android için Navigasyon SDK'sına değiştirebilirsiniz. Ancak iki önemli istisna vardır:
- İstisna oluşturan API'ler.
- NavSDK'da çalışmayan ve çağrıldığında herhangi bir etkisi olmayan API'ler.
Bu istisnalar aşağıda açıklanmıştır.
İstisna oluşturan API'ler
Uygulamanız aşağıdaki işlevi etkinleştirirse bu işlev istisna oluşturur:
Navigasyon SDK'sında işlevi olmayan API'ler
Aşağıdaki API'lerin Navigasyon SDK'sında işlevselliği yoktur ancak kodunuz bunları çağırsa bile bir etkisi olmaz. Bunlar aşağıdaki kategorilere ayrılır:
- Giyilebilir cihaz aktiviteleri için API'ler.
- Android için Navigation SDK'sında bu işlevselliği kullanmak istiyorsanız bunun yerine TBT feed'ini etkinleştirin.
- Diğer API'ler.
Giyilebilir cihazlar için API'ler
GoogleMapOptions.ambientEnabled(boolean enabled) ile, giyilebilir cihaz uygulamalarında ambiyans modunu devre dışı bırakın veya etkinleştirin. MapView ve MapFragment'teki onEnterAmbient ve onExitAmbient yöntemleri çağrıldığında etkisizdir. Giyilebilir cihazlarda TBT feed'ini kullanın.
Diğer API'ler
- Özel bir LocationSource ayarlamanınNavSDK'da etkisi yoktur.
- Tüm MapsInitializer API'leri.
- RuntimeRemoteException.
Yalnızca Mobilite Hizmetleri müşterileri için tasarlanmış API'ler
Navigation SDK'da sadece Mobilite Hizmetleri müşterileri tarafından kullanılması amaçlanan ve Google'ın işlem başına faturalandırdığı çeşitli API'ler vardır. Mobility Services müşterisi değilseniz aşağıdaki yöntemler hiçbir işlem yapmaz:
NavigationTransactionRecorder.pickup()NavigationTransactionRecorder.dropoff()NavigationTransactionRecorder.generatedTransactionId()Navigator.fetchRouteInfo()Navigator.setTransactionIds()