نمای کلی
با مجموعهها، منظم بمانید
ذخیره و طبقهبندی محتوا براساس اولویتهای شما.
Navigation SDK for Android ویژگی های ناوبری را به Maps SDK for Android اضافه می کند. اگر برنامه Android مجهز به نقشه های Google شما به ویژگی های ناوبری نیاز دارد، باید به Navigation SDK برای Android بستگی داشته باشد.
با این اوصاف، بیشتر توابع موجود در Maps SDK برای اندروید در Navigation SDK برای اندروید یکسان عمل می کنند. شما با استفاده از همان بسته com.google.android.gms.maps
به آنها دسترسی دارید، صرف نظر از اینکه از کدام وابستگی SDK استفاده می کنید. این بدان معناست که اگر برنامه شما قبلاً به Maps SDK برای Android وابسته بود، میتوانید وابستگی آن را به Navigation SDK برای Android بدون تأثیر بر عملکرد موجود برنامه خود تغییر دهید، به استثنای دو استثنای قابل توجه:
- API هایی که یک استثنا ایجاد می کنند.
- APIهایی که در NavSDK کار نمی کنند و در هنگام فراخوانی تاثیری ندارند.
این استثناها در زیر توضیح داده شده است.
API هایی که یک استثنا ایجاد می کنند
اگر برنامه شما آن را فعال کند، تابع زیر یک استثنا ایجاد می کند:
APIهایی بدون عملکرد در Navigation SDK
APIهای زیر هیچ عملکردی در Navigation SDK ندارند، اما اگر کد شما آنها را فراخوانی کند نیز تأثیری ندارند. آنها در دسته های زیر قرار می گیرند:
- API برای فعالیت پوشیدنی.
- اگر این قابلیت را در Navigation SDK برای Android میخواهید، به جای آن فید TBT را فعال کنید.
- سایر API ها
API برای ابزارهای پوشیدنی
GoogleMapOptions.ambientEnabled (فعال بولین) معمولاً به شما امکان می دهد حالت محیط را برای برنامه های پوشیدنی غیرفعال یا فعال کنید. علاوه بر این، متدهای onEnterAmbient و onExitAmbient در MapView و MapFragment وجود دارند، اما هنگام فراخوانی تاثیری ندارند. برای پوشیدنیها، به جای آن از فید TBT استفاده کنید.
سایر API ها
APIهایی که فقط برای استفاده توسط مشتریان Mobility Services در نظر گرفته شده است
چندین API در Navigation SDK وجود دارد که فقط برای استفاده توسط مشتریان Mobility Services در نظر گرفته شده است که توسط Google بر اساس هر تراکنش صورتحساب دریافت میکنند. اگر مشتری Mobility Services نیستید، روشهای زیر غیرمجاز هستند:
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2025-08-29 بهوقت ساعت هماهنگ جهانی."],[[["\u003cp\u003eThe Navigation SDK for Android provides navigation features on top of the Maps SDK for Android and is a required dependency for apps needing navigation.\u003c/p\u003e\n"],["\u003cp\u003eMost Maps SDK functionalities remain the same in the Navigation SDK, accessible via the \u003ccode\u003ecom.google.android.gms.maps\u003c/code\u003e package.\u003c/p\u003e\n"],["\u003cp\u003eCertain APIs behave differently in the Navigation SDK, either throwing exceptions (like LiteMode) or having no functionality (like wearable APIs and custom LocationSource).\u003c/p\u003e\n"],["\u003cp\u003eFor wearable apps, the TBT feed should be used instead of ambient mode functionalities.\u003c/p\u003e\n"],["\u003cp\u003eSome APIs are exclusively for Mobility Services customers and function as no-ops for other users.\u003c/p\u003e\n"]]],[],null,["# Overview\n\nThe Navigation SDK for Android adds navigation features to the\nMaps SDK for Android. If your Google Maps-powered Android application\nneeds navigation features, it must depend on the Navigation SDK for Android.\n\nThat said, most functions in the Maps SDK for Android behave the same in\nthe Navigation SDK for Android. You access them using the same\n`com.google.android.gms.maps` package, no matter which SDK dependency you use.\nThis means that, if your app previously depended on the\nMaps SDK for Android, you can change its dependency to the\nNavigation SDK for Android without affecting the existing functionality of your app, with\ntwo notable exceptions:\n\n- APIs that throw an exception.\n- APIs that don't function in the NavSDK and have no impact when called.\n\nThese exceptions are described below.\n\nAPIs that throw an exception\n----------------------------\n\nThe following function throws an exception if your application enables it:\n\n- [LiteMode](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMapOptions#liteMode(boolean))\n\nAPIs with no functionality in Navigation SDK\n--------------------------------------------\n\nThe following APIs have no functionality in the Navigation SDK, but also have no\nimpact if your code calls them. They fall into the following categories:\n\n- APIs for wearable activity.\n - Enable [TBT feed](/maps/documentation/navigation/android-sdk/tbt-feed) instead if you want this functionality in the Navigation SDK for Android.\n- Other APIs.\n\n### APIs for wearables\n\n[GoogleMapOptions.ambientEnabled(boolean enabled)](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMapOptions#ambientEnabled(boolean)) would\nnormally allow you to disable or enable [ambient mode](/maps/documentation/android-sdk/wear#ambient) for\nwearable apps. Additionally,\n[onEnterAmbient](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView#onEnterAmbient(android.os.Bundle))\nand\n[onExitAmbient](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView#onExitAmbient())\nmethods exist in [MapView](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapView) and [MapFragment](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapFragment), but have\nno impact when called. For wearables, use the [TBT feed](/maps/documentation/navigation/android-sdk/tbt-feed) instead.\n\n### Other APIs\n\n- [Setting a custom LocationSource](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/GoogleMap#setLocationSource(com.google.android.gms.maps.LocationSource)) does nothing in the NavSDK.\n- All [MapsInitializer](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/MapsInitializer) APIs.\n- [RuntimeRemoteException](/maps/documentation/navigation/android-sdk/reference/com/google/android/gms/maps/model/RuntimeRemoteException).\n\nAPIs that are only intended for use by Mobility Services customers\n------------------------------------------------------------------\n\n\nThere are several APIs in the Navigation SDK that are only intended for use by [Mobility Services](/maps/documentation/transportation-logistics/mobility) customers, who are billed by Google on a per-transaction basis. If you are not a Mobility Services customer, the following methods are no-ops:\n\n- [`NavigationTransactionRecorder.pickup()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#pickup(com.google.android.libraries.navigation.Waypoint,%20java.util.List%3Cjava.lang.String%3E))\n- [`NavigationTransactionRecorder.dropoff()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#dropoff(com.google.android.libraries.navigation.Waypoint,%20java.util.List%3Cjava.lang.String%3E))\n- [`NavigationTransactionRecorder.generatedTransactionId()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/NavigationTransactionRecorder#public-static-string-generatetransactionid)\n- [`Navigator.fetchRouteInfo()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/Navigator#public-abstract-listenableresultfuturerouteinfo-fetchrouteinfo-waypoint-waypoint,-routingoptions-routingoptions)\n- [`Navigator.setTransactionIds()`](/maps/documentation/navigation/android-sdk/reference/com/google/android/libraries/navigation/Navigator#public-abstract-void-settransactionids-liststring-transactionids)"]]