GMSNavigationServices 类参考文档

GMSNavigationServices 类引用

概览

用于实现对 Google Maps Navigation SDK for iOS 的移动设备访问权限的服务。

静态公开成员函数

(BOOL) + areTermsAndConditionsAccepted
 指明用户是否已接受条款及条件。
(void) + showTermsAndConditionsDialogIfNeededWithTitle:companyName:UIParams:callback:
 如果应用用户尚未接受 Navigation SDK 条款及条件,则显示模态对话框。
(void) + showTermsAndConditionsDialogIfNeededWithTitle:companyName:callback:
 以默认外观和风格显示条款及条件对话框。
(void) + showTermsAndConditionsDialogIfNeededWithCompanyName:callback:
 以默认标题和外观和风格显示条款及条件对话框。
(void) + resetTermsAndConditionsAccepted
 将条款及条件重置为“未接受”状态。
(void) + setAbnormalTeralityReportingEnabled
 允许报告异常 SDK 终止情况,例如应用在 SDK 仍在运行时崩溃。
(可为 null 的 GMSNavigationSession *)+ createNavigationSession
 用于创建一个未与地图视图关联的新导航会话。
(NSString *) + openSourceLicenseInfo
 返回 iOS 版 Google 导航 SDK 的开源软件许可信息。
(NSString *) + navSDKVersion
 返回此版本的 iOS 版 Navigation SDK 的版本。

属性

BOOL shouldOnlyShowDriverAwarenesssDisclaimer
 指示 showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 是否应仅显示驾驶员感知免责声明。

(请注意,这些并非成员函数。)

typedef void(^)GMSTermsResponseCallback)(接受 BOOL 条款)
 在用户接受或拒绝条款及条件时调用。

成员函数文档

指明用户是否已接受条款及条件。

如果为 false,这些服务将停用对导航界面的访问权限。

+ (void) showTermsAndConditionsDialogIfNeededWithTitle: (nullable NSString *)  title
公司名称: (NSString *)  companyName
UIParams: (可为 null 的 GMSNavigationTermsDialogUIParams *) UIParams
回调: (GMSTermsResponseCallback) 回调

如果应用用户尚未接受 Navigation SDK 条款及条件,则显示模态对话框。

回调随用户的响应一起发送到主队列中。

如果用户已接受条款及条件,系统不会显示任何对话框,并且回调包含 termsAccepted = YES

companyName 参数设置为您的公司。公司名称显示在条款及条件文本中。这段文字向应用用户解释了位置数据可能会分享给该公司以改善运营。

从主线程调用此方法。不等待响应的多次调用不会产生任何影响。

参数:
标题对话框的标题。如果 title 为 nil,对话框将使用默认标题。
注意:
对于自定义商品名,此方法的调用方需要本地化此参数。默认标题由服务自动本地化。
参数:
companyName发布应用且与 Google 达成的位置数据分享协议的公司的名称。
UIParams用于定义对话框外观和风格的参数。如果为 nil,对话框将使用默认外观和风格。
callback块随用户的响应一起发送到主队列中。
+ (void) showTermsAndConditionsDialogIfNeededWithTitle: (nullable NSString *)  title
公司名称: (NSString *)  companyName
回调: (GMSTermsResponseCallback) 回调

以默认外观和风格显示条款及条件对话框。

如需了解详情(包括参数 companyNamecallback 的说明),请参阅 +showTermsAndConditionsDialogIfNeededWithTitle:companyName:UIParams:callback:。

+ (void) showTermsAndConditionsDialogIfNeededWithCompanyName: (NSString *)  companyName
回调: (GMSTermsResponseCallback) 回调

以默认标题和外观和风格显示条款及条件对话框。

如需了解详情(包括参数 companyNamecallback 的说明),请参阅 +showTermsAndConditionsDialogIfNeededWithTitle:companyName:UIParams:callback:。

将条款及条件重置为“未接受”状态。

调用此方法后,areTermsAndConditionsAccepted 将返回 NO,且 showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 会显示条款及条件对话框。任何现有GMSMapView实例的navigationEnabled属性都将重置为 NO。

+(空)setAbnormalTeralityReportingEnabled (BOOL)  abnormalTerminationReportingEnabled

允许报告异常 SDK 终止情况,例如应用在 SDK 仍在运行时崩溃。

这有助于 Google 提高 SDK 的稳定性(如果适用)。默认值为 YES,且值必须在初始化服务实例之前更新。

必须从主线程设置此属性。

用于创建一个未与地图视图关联的新导航会话。

分配并返回新的导航会话。可在会话上设置航点和选项,并可向会话添加监听器。

如果尚未接受条款及条件,此方法将返回 nil。这是此方法会返回 nil 的唯一原因。

您可以在创建地图后,使用 GMSMapView 方法 -enableNavigationWithSession: 将此会话与地图相关联。会话是会消耗内存、数据和电量的重量级对象,因此仅当持久性导航会话是应用的主要功能时,才应分配会话。同理,如果您的应用在建立导航会话后创建导航界面,请务必使用现有导航会话启动导航界面,而不是创建新的导航会话。

导航会话的生命周期受常规 Objective-C 语义控制。因此,此日常安排的调用方应保存对会话的引用。

+ (NSString *) openSourceLicenseInfo

返回 iOS 版 Google 导航 SDK 的开源软件许可信息。

此信息必须在您的应用中提供。

+ (NSString *) navSDKVersion

返回此版本的 iOS 版 Navigation SDK 的版本。


- (typedef void(^ GMSTermsResponseCallback)(BOOL termsAccepted)) [related]

在用户接受或拒绝条款及条件时调用。


属性说明

- (BOOL) shouldOnlyShowDriverAwarenesssDisclaimer [read, write, assign]

指示 showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 是否应仅显示驾驶员感知免责声明。

默认值为 NO,系统会在 Navigation SDK 提供的默认条款和服务之外显示免责声明。设置为 YES 以表明应仅显示驾驶员认知度免责声明。

如果项目必须显示“条款及条件”对话框,则将此变量设置为 YES 不会产生任何影响。此外,getter 方法始终返回 NO

必须设置此属性或从主线程读取此属性。