导航 API

public final 类 NavigationApi 扩展对象

Navigation API 的入口点。使用此类上的静态方法获取对 Navigator 的引用。

嵌套类摘要

@interface NavigationApi.ErrorCode ErrorCode 是在无法成功获取 Navigator 时由 getNavigator(Activity, NavigatorListener)getNavigator(Application, NavigatorListener) 返回的状态代码。
接口 NavigationApi.NavigatorListener getNavigator(Activity, NavigatorListener) 注册 NavigatorListener,以接收关于上述 Navigator 状态的通知。 
接口 NavigationApi.OnTermsResponseListener showTermsAndConditionsDialog(Activity, String, OnTermsResponseListener) 注册 OnTermsResponseListener,以便在用户接受或拒绝条款及条件时收到通知。

公共方法摘要

static 布尔值
areTermsAccepted(申请申请)
如果用户之前已接受 Google 的导航条款及条件,则返回 true
static void
cleanup()
清理了 NavSDK 组件的内部状态。
同步 static ForegroundServiceManager
getForegroundServiceManager(应用应用)
获取单例 ForegroundServiceManager 实例。
static 字符串
getNavSDKVersion()
返回当前的 NavSDK 版本。
static void
getNavigator(应用应用,NavigationApi.NavigatorListener 回调)
获取 Navigator 实例。
static void
getNavigator(Activity activity、NavigationApi.NavigatorListener 回调、TermsAndConditionsCheckOption termsCheck)
获取 Navigator 实例。
static void
getNavigator(Activity activity,NavigationApi.NavigatorListener 回调)
等同于 getNavigator(activity, callback, {@link TermsAndConditionsCheckOption#ENABLED}
static void
getNavigatorNoToS(应用应用,NavigationApi.NavigatorListener 回调)
获取 Navigator 实例。
静态 RoadSnappedLocationProvider
getRoadSnappedLocationProvider(应用)
获取 RoadSnappedLocationProvider 的实例,该实例可用于订阅道路贴靠用户位置。
static NavigationTransactionRecorder
getTransactionRecorder(应用应用)
获取 NavigationTransactionRecorder 的实例,该实例可用于记录与导航相关的事务。
同步 静态 void
initForegroundServiceManager(应用应用、Integer notificationId、String defaultMessage、NotificationContentProvider 提供程序)
使用提供的参数初始化 ForegroundServiceManager 实例。
static void
resetTermsAccepted(申请申请)
重置条款及条件,以便进行测试。
static void
showTermsAndConditionsDialog(Activity activity, String companyName, String title, NavigationApi.OnTermsResponseListener 监听器)
显示一个对话框,使用默认外观和风格,引导用户接受 Google 的导航条款及条件。
static void
showTermsAndConditionsDialog(Activity activity, String companyName, String title, TermsAndConditionsUIParams uiParams、NavigationApi.OnTermsResponseListener 监听器、TermsAndConditionsCheckOption termsAndConditionsCheckOption)
显示一个对话框,引导用户接受 Google 的导航条款及条件。
static void
showTermsAndConditionsDialog(Activity activity、String companyName、NavigationApi.OnTermsResponseListener 监听器)
显示一个对话框,使用默认标题和默认外观和风格,以引导用户接受 Google 的导航条款及条件。

继承的方法摘要

公共方法

public static 布尔值 areTermsAccepted (应用申请)

如果用户之前已接受 Google 的导航条款及条件,则返回 true

您可以使用此方法检查是否应在应用中提前(而不是在用户即将导航到某处)显示术语屏幕。例如,可以在应用显示其他条款及条件时检查此值,以便用户在一个任务中接受应用的所有必需的条款及条件。

参数
应用 当前应用
返回
  • 如果用户已接受条款,则为 true;否则为 false

public static void cleanup ()

清理了 NavSDK 组件的内部状态。如果存在当前导航器,系统将停止并停用导航。以后无法通过此导航器发出指导请求。如果您的应用不再需要导航器且已销毁对导航器的所有引用,请调用此方法来恢复内存。如果在此调用后您的应用需要导航器,请使用 getNavigator() 创建新导航器。注意:创建新的导航器需要时间;请考虑延迟对应用性能的影响与恢复内存的优势。

public static sync ForegroundServiceManager getForegroundServiceManager (应用应用)

获取单例 ForegroundServiceManager 实例。如果未在 getForegroundServiceManager(Application) 之前调用 initForegroundServiceManager(Application, Integer, String, NotificationContentProvider),则将使用默认通知 ID、消息和通知提供程序。

参数
应用 当前 Application

public static String getNavSDKVersion ()

返回当前的 NavSDK 版本。

public static void getNavigator (应用应用,NavigationApi.NavigatorListener 回调)

获取 Navigator 实例。

如果用户尚未同意条款及条件,回调函数会立即触发并显示错误代码 TERMS_NOT_ACCEPTED

请注意,Navigator 是一个单例;如果您多次调用此方法,则每次调用都会返回同一个导航器。

参数
应用 当前Application
callback 将在 Navigator 就绪或发生错误时触发的回调

public static void getNavigator (Activity activity, NavigationApi.NavigatorListener 回调, TermsAndConditionsCheckOption termsCheck)

获取 Navigator 实例。

如果用户尚未同意条款及条件,此调用将显示一个对话框,提醒用户遵守当地法规。

如果 termsCheckENABLED,则对话框还将包含指向 Navigation SDK 条款及条件的链接。如果用户未能接受这些条款,系统将调用 callback 并返回 TERMS_NOT_ACCEPTED 错误。

请注意,Navigator 是一个单例;如果您多次调用此方法,则每次调用都会返回同一个导航器。

参数
活动 用于显示条款及条件对话框的 Activity(如果尚未接受)
callback 将在 Navigator 就绪或发生错误时触发的回调
termsCheck 指明是否应跳过条款及条件检查

public static void getNavigator (Activity activity, NavigationApi.NavigatorListener 回调)

等同于 getNavigator(activity, callback, {@link TermsAndConditionsCheckOption#ENABLED}

参数
活动
callback

public static void getNavigatorNoToS (应用应用,NavigationApi.NavigatorListener 回调)

获取 Navigator 实例。

绕过条款及条件。

请注意,Navigator 是一个单例;如果您多次调用此方法,则每次调用都会返回同一个导航器。

参数
应用 当前的 Application
callback 将在 Navigator 就绪或发生错误时触发的回调。

public static RoadSnappedLocationProvider getRoadSnappedLocationProvider (应用应用)

获取 RoadSnappedLocationProvider 的实例,该实例可用于订阅道路贴靠用户位置。请注意,订阅道路吸附位置更新可能会导致电池电量耗尽,或者如果一直在后台运行,可能会无意中收集用户位置数据。

调用此方法之前必须先成功获取 Navigator,否则它将返回 null

参数
应用 当前 Application

public static NavigationTransactionRecorder getTransactionRecorder (应用应用)

获取 NavigationTransactionRecorder 的实例,该实例可用于记录与导航相关的事务。

当且仅当 Google 按交易结算时,才应使用此类。

调用此方法之前必须先成功获取 Navigator,否则它将返回 null

参数
应用 当前 Application

public static sync void initForegroundServiceManager (Application application, Integer notificationId, String defaultMessage, NotificationContentProvider provider)

使用提供的参数初始化 ForegroundServiceManager 实例。

只有在您想要修改任何默认参数时,才应调用此方法。否则,请直接调用 getForegroundServiceManager(Application)。此方法只能调用一次,并且必须在 getForegroundServiceManager(Application) 之前调用。

参数
应用 当前Application
notificationId 常驻通知的通知 ID
defaultMessage 未指定 provider 时要显示的默认消息
provider NotificationContentProvider 的实现

public static void resetTermsAccepted (应用申请)

重置条款及条件,以便进行测试。如果您想测试条款及条件对话框,请在对 NavigationApi 的任何调用之前添加对此项的调用。

参数
应用 当前应用

public static void showTermsAndConditionsDialog (Activity activity, String companyName, String title, NavigationApi.OnTermsResponseListener 监听器)

显示一个对话框,使用默认外观和风格,引导用户接受 Google 的导航条款及条件。

参数
活动
companyName
标题
监听器

public static void showTermsAndConditionsDialog (Activity activity, String companyName, String title, TermsAndConditionsUIParams uiParams, NavigationApi.OnTermsResponseListener listener, TermsAndConditionsCheckOption termsAndConditionsCheckOption)

显示一个对话框,引导用户接受 Google 的导航条款及条件。如果指定,系统将在界面线程上调用监听器,以指示用户是否接受条款及条件。

请注意,即使用户先前已接受请求,该对话框仍会显示。仅当 areTermsAccepted(Application)false 时,才应调用此方法,因为用户无法拒绝接受条款及条件。

参数
活动 用于显示对话框的 Activity
companyName 您的公司名称,此名称将显示在条款及条件对话框中
标题 对话框的标题。如果为 null,该对话框将使用默认标题。
uiParams 用于自定义对话框外观和风格的参数。如果为 null,则使用默认外观和风格。
监听器 用户接受或拒绝条款及条件时触发的可选回调函数
termsAndConditionsCheckOption TermsAndConditionsCheckOption,用于指定用于查看条款及条件的选项

public static void showTermsAndConditionsDialog (Activity activity, String companyName, NavigationApi.OnTermsResponseListener 监听器)

显示一个对话框,使用默认标题和默认外观和风格,以引导用户接受 Google 的导航条款及条件。

参数
活动
companyName
监听器