GMSNavigationServices 類別參考資料

GMSNavigationServices 類別參考

總覽

可控管 Google Maps Navigation SDK for iOS 行動存取權的服務。

靜態成員函式

(BOOL) + areTermsAndConditionsAccepted
 如果是 >= 5.5.0 版本,指出使用者是否已確認條款及細則。
(void) + showTermsAndConditionsDialogIfNeededWithTitle:companyName:UIParams:callback:
 如果應用程式使用者尚未接受 Navigation SDK 條款及細則,就會顯示強制回應對話方塊。
(void) + showTermsAndConditionsDialogIfNeededWithTitle:companyName:callback:
 使用預設外觀和風格顯示條款及細則對話方塊。
(void) + showTermsAndConditionsDialogIfNeededWithCompanyName:callback:
 使用預設標題和外觀和風格顯示條款及細則對話方塊。
(void) + resetTermsAndConditionsAccepted
 將條款及細則重設為未接受狀態。
(void) + setAbnormalTerminationReportingEnabled:
 啟用 SDK 異常終止的回報功能,例如應用程式在 SDK 運作期間異常終止。
(可為空值GMSNavigationSession *)+ createNavigationSession
 建立新的導覽工作階段,但不與地圖檢視建立關聯。
(NSString *)+ openSourceLicenseInfo
 傳回 Google Navigation SDK for iOS 的開放原始碼軟體授權資訊。
(NSString *)+ navSDKVersion
 傳回這個版本的 iOS 版 Navigation SDK 版本。

資源

BOOLshouldOnlyShowDriverAwarenesssDisclaimer
 指出 showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 是否應只顯示駕駛人認知免責事項。

(請注意,這些不是成員函式)。

typedef void(^)GMSTermsResponseCallback )(BOOL 條款接受)
 在使用者接受或拒絕條款及細則時呼叫。

成員函式說明文件

如果是 >= 5.5.0 版本,指出使用者是否已確認條款及細則。

如果是較舊的版本,指出使用者是否已接受條款及細則。

如果設為 false,服務會停用對導航介面的存取權。

+ (void) showTermsAndConditionsDialogIfNeededWithTitle: (nullable NSString *)  title
公司名稱: (NSString *) companyName
UIParams: (可為空值GMSNavigationTermsDialogUIParams *) UIParams
回呼: (GMSTermsResponseCallback) 回呼

如果應用程式使用者尚未接受 Navigation SDK 條款及細則,就會顯示強制回應對話方塊。

回呼會與使用者回應一起傳送至主要佇列。

如果使用者已接受條款及細則,則不會顯示對話方塊,且回呼包含 termsAccepted = YES

companyName 參數設為貴公司。公司名稱會顯示在條款及細則文字中。這段文字向使用者說明,該公司可能會將位置資料分享給這間公司,以提升營運效率。

從主執行緒呼叫此方法。多次呼叫而不等待回應不會產生任何效果。

參數:
title對話方塊的標題。如果 title 為 nil,對話方塊會使用預設標題。
注意:
對於自訂標題,這個方法的呼叫端需要將這個參數本地化。預設標題會由服務自動本地化。
參數:
companyName發布應用程式的公司名稱,以及與 Google 達成分享位置資料的協議。
UIParams定義對話方塊外觀和風格的參數。如果設為 nil,對話方塊會使用預設的外觀和風格。
回呼封鎖已隨使用者回應傳送至主佇列。
+ (void) showTermsAndConditionsDialogIfNeededWithTitle: (nullable NSString *)  title
公司名稱: (NSString *) companyName
回呼: (GMSTermsResponseCallback) 回呼

使用預設外觀和風格顯示條款及細則對話方塊。

詳情請參閱 +showTermsAndConditionsDialogIfNeededWithTitle:companyName:UIParams:callback: 進一步瞭解參數 、companyNamecallback

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

使用預設標題和外觀和風格顯示條款及細則對話方塊。

詳情請參閱「+showTermsAndConditionsDialogIf NeededWithTitle:companyName:UIParams:callback:」,包括參數 companyNamecallback 的說明。

將條款及細則重設為未接受狀態。

呼叫此方法後,areTermsAndConditionsAccepted 會傳回 NO,而 #if SDK_BUILD_CONFIG(EnableNavSDKSkipToSOptions) showTermsAndConditionsDialogIfNeededWithOptions:callback: 和 #endif showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 會顯示條款及細則對話方塊。任何現有 GMSMapView 執行個體的 navigationEnabled 屬性將重設為 NO。

+ (void) setAbnormalTerminationReportingEnabled: (BOOL)  abnormalTerminationReportingEnabled

啟用 SDK 異常終止的回報功能,例如應用程式在 SDK 運作期間異常終止。

讓 Google 在適用情況下改善 SDK 穩定性。預設值為 YES。您必須先更新值,才能初始化服務執行個體。

這個屬性必須透過主執行緒進行設定。

建立新的導覽工作階段,但不與地圖檢視建立關聯。

這樣會分配並傳回新的導覽工作階段。您可在工作階段上設定路線控點和選項,並且可以新增事件監聽器。

如果尚未接受條款及細則,此方法會傳回 nil。這是唯一從這個方法傳回 nil 的原因。

建立這個工作階段後,您可以使用 GMSMapView 方法 -enableNavigationWithSession,將這個工作階段與地圖建立關聯:工作階段是重型物件,會耗用記憶體、資料和電池,因此只有在持續導覽工作階段是應用程式的主要功能時,才應分配這些工作階段。基於相同理由,如果您的應用程式在建立導覽工作階段後建立導覽 UI,請務必使用現有的導覽工作階段啟動導覽 UI,而非建立新的導覽工作階段。

導覽工作階段的生命週期取決於一般 Objective-C 語意。因此,這個日常安排的呼叫端應儲存工作階段的參照。

+ (NSString *) openSourceLicenseInfo

傳回 Google Navigation SDK for iOS 的開放原始碼軟體授權資訊。

請務必在您的應用程式中提供這類資訊。

+ (NSString *) navSDKVersion

傳回這個版本的 iOS 版 Navigation SDK 版本。


- (typedef void(^ GMSTermsResponseCallback)(BOOL 條款)) [related]

在使用者接受或拒絕條款及細則時呼叫。

如果是 >= 5.5.0 以上的版本,termsAccepted 一律為 YES。


資源說明文件

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

指出 showTermsAndConditionsDialogIfNeededWithCompanyName:callback: 是否應只顯示駕駛人認知免責事項。

預設值為 NO,且除了搭配 Navigation SDK 提供的預設條款和服務外,還會顯示免責事項。設為 YES,表示只應顯示駕駛人感知免責事項。

如果專案必須顯示「條款及細則」對話方塊,將這個變數設為 YES 就不會有任何作用。此外,getter 方法一律會傳回 NO

這個屬性必須從主執行緒設定或讀取。