GMSPlacesClient 類別參考資料

GMSPlacesClient 類別參考資料

總覽

Places SDK 的主要介面。

用於搜尋及取得地點的詳細資料。這個類別只能透過 [GMSPlacesClient sharedClient] 方法存取。

GMSPlacesClient 方法只能透過主執行緒呼叫。從其他執行緒呼叫這些方法會導致例外狀況或未定義的行為。除非另有指定,否則系統會在主執行緒上叫用所有回呼。

公開成員函式

(無效)- lookUpPlaceID:callback:
 取得地點詳細資料。
(無效)- lookUpPhotosForPlaceID:callback:
 取得特定地點最多 10 張相關中繼資料。
(無效)- loadPlacePhoto:callback:
 以特定尺寸載入特定相片的圖片。
(無效)- loadPlacePhoto:constrainedToSize:scale:callback:
 載入特定相片的圖片,並調整為指定尺寸上限。
(無效)- currentPlaceWithCallback:
 傳回裝置目前已知位置的預估值。
(無效)- findAutocompletePredictionsFromQuery:filter:sessionToken:callback:
 從文字查詢中尋找自動完成預測。
(無效)- fetchPlaceFromPlaceID:placeFields:sessionToken:callback:
 擷取地點詳細資料。
(無效)- findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:callback:
 根據使用者目前的所在位置找出可能性。

靜態公開成員函式

(instancetype)+ sharedClient
 提供 Google Places SDK for iOS 的 GMSPlacesClient 共用執行個體,並視需要建立該執行個體。
(BOOL)+ ProvideAPIKey:
 將 API 金鑰提供給 Google Places SDK for iOS。
(NSString *)+ openSourceLicenseInfo
 傳回 Google Places SDK for iOS 的開放原始碼軟體授權資訊。
(NSString *)+ SDKVersion
 傳回這個版本的 Google Places SDK for iOS 版本。
(NSString *)+ SDKLongVersion
 傳回這個版本的 Google Places SDK for iOS 長版。

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

typedef void(^)GMSPlaceResultCallback )(GMSPlace *_Nullable results、NSError *_Nullable 錯誤)
 用於接收 Place Details 查詢的回呼類型。
typedef void(^)GMSPlaceLikelihoodListCallback )(GMSPlaceLikelihoodList *_NullableOutcomeList, NSError *_Nullable error)
 用於接收地點可能清單的回呼類型。
typedef void(^)GMSPlaceLikelihoodsCallback )(NSArray< GMSPlaceLikelihood * > *_Nullable 機率, NSError *_Nullable error)
 接收 GMSPlaceLikelihood 陣列的回呼類型。
typedef void(^)GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nuableable results、NSError *_Nullable error)
 接收自動完成結果的回呼類型。
typedef void(^)GMSPlacePhotoMetadataResultCallback )(GMSPlacePhotoMetadataList *_Nuableable photos, NSError *_Nullable error)
 接收地點相片結果的回呼類型。
typedef void(^)GMSPlacePhotoImageResultCallback )(UIImage *_Nullable Photo, NSError *_Nullable error)
 GMSPlacePhotoMetadata 物件接收 UIImage 物件的回呼類型。

成員函式說明文件

+ (instancetype) sharedClient

提供 Google Places SDK for iOS 的 GMSPlacesClient 共用執行個體,並視需要建立該執行個體。

如果您的應用程式經常使用 GMSPlacesClient 的方法,建議您直接保留這個物件,否則系統可能會定期重新啟動與 Google 的連線。

+ (BOOL) ProvideAPIKey: (NSString *) key

將 API 金鑰提供給 Google Places SDK for iOS。

這組金鑰會透過 Google Cloud Platform Console 為應用程式產生,並與應用程式的軟體包 ID 配對才能識別。您必須在使用 GMSPlacesClient 之前呼叫應用程式 (例如,app:didFinishLaunchingWithOptions:)。

傳回:
如果成功提供 APIKey,則為 True。
+ (NSString *) openSourceLicenseInfo

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

這些資訊必須在應用程式內提供。

+ (NSString *) SDKVersion

傳回這個版本的 Google Places SDK for iOS 版本。

例如「1.0.0」。

+ (NSString *) SDKLongVersion

傳回這個版本的 Google Places SDK for iOS 長版。

例如「1.0.0 (102.1)」。

- (void) findUpPlaceID: (NSString *) PlaceID
回呼: (GMSPlaceResultCallback) 回呼

取得地點詳細資料。

這個方法不會封鎖。

參數:
地點 ID要查詢的地點 ID。
回呼叫用查詢結果的回呼。
- (void) findUpPhotosForPlaceID: (NSString *) PlaceID
回呼: (GMSPlacePhotoMetadataResultCallback) 回呼

取得特定地點最多 10 張相關中繼資料。

系統會從多個位置取得相片,包括業主和 Google+ 使用者提供的相片。在大多數情況下,使用這些相片時可以不包含作者資訊,也可能在圖片中加入必要的作者資訊。不過,您必須在回應中使用 attributions 屬性來擷取任何其他必要的屬性,並在顯示圖片時在應用程式中顯示這些屬性。最多只能傳回 10 張相片。

這個方法多次呼叫可能只會傳回相同的相片。不過,這並不保證一定會顯示,因為基礎資料可能有所變更。

這個方法會執行網路查詢。

參數:
地點 ID用於查詢相片的地點 ID。
回呼叫用查詢結果的回呼。
- (void) loadPlacePhoto: (GMSPlacePhotoMetadata *) photoMetadata
回呼: (GMSPlacePhotoImageResultCallback) 回呼

以特定尺寸載入特定相片的圖片。

SDK 可能會快取圖片資料。如果快取中並沒有要求的相片,則會執行網路查詢。

參數:
相片中繼資料要載入 UIImageGMSPlacePhotoMetadata
回呼要用載入的 UIImage 叫用的回呼。
- (void) loadPlacePhoto: (GMSPlacePhotoMetadata *) photoMetadata
constrainedToSize: (CGSize) 大小上限
規模: (CGFloat) 規模
回呼: (GMSPlacePhotoImageResultCallback) 回呼

載入特定相片的圖片,並調整為指定尺寸上限。

圖片會縮放至指定尺寸,以維持原始圖片的長寬比。這項資源調度功能是在伺服器端執行。

如果 scale 參數不是 1.0 maxSize 乘上這個值,系統會將傳回的 UIImage 設為指定縮放比例。如要載入螢幕上顯示圖片,這個參數應設為螢幕縮放比例。

SDK 可能會快取圖片資料。如果快取中並沒有要求的相片,則會執行網路查詢。

注意:
套用縮放比例係數後,請確定 maxSize 中的尺寸會四捨五入至最接近的整數,然後再使用。如果要求的圖片超過大小上限,系統會傳回較小的圖片。
參數:
相片中繼資料要載入 UIImageGMSPlacePhotoMetadata
最大尺寸圖片的大小上限,
的保護載入圖片的縮放比例。
回呼要用載入的 UIImage 叫用的回呼。

傳回裝置目前已知位置的預估值。

依據裝置的最後推測位置產生地點可能性清單。成功時,系統會叫用這個可能的回呼;如果發生錯誤,則會叫用 NSError。

注意:
使用這種方法時,您的應用程式必須具備存取目前裝置位置資訊的權限。呼叫此方法前,請務必使用 [CLLocationManager requestTimeInInAuthorization] 或 [CLLocationManager requestAlwaysAuthorization] 要求使用者位置的存取權。如果您呼叫此方法,而且應用程式沒有正確的授權狀態,則系統會呼叫回呼並顯示錯誤。
參數:
回呼要叫用地點可能清單的回呼。
- (void) findAutocompletePredictionsFromQuery: (NSString *) 查詢
篩選器: (可為空值的 GMSAutocompleteFilter *) 篩選器
sessionToken: (可為空值的 GMSAutocompleteSessionToken *) 工作階段符記
回呼: (GMSAutocompletePredictionsCallback) 回呼

從文字查詢中尋找自動完成預測。

可選擇是否針對特定地點自訂結果或限制搜尋區域。這個方法不會封鎖。

成功時,系統會使用提供的自動完成自動完成陣列叫用提供的回呼;如果發生錯誤,則會叫用 NSError。

參數:
項查詢要自動完成的部分文字。
過濾器要套用至結果的篩選器。此參數可以為 nil。
工作階段符記使用 GMSAutocompleteSessionToken 將要求與帳單工作階段建立關聯。
回呼叫用預測結果的回呼。
- (void) fetchPlaceFromPlaceID: (NSString *) PlaceID
placeFields: (GMSPlaceField) 地點欄位
sessionToken: (可為空值的 GMSAutocompleteSessionToken *) 工作階段符記
回呼: (GMSPlaceResultCallback) 回呼

擷取地點詳細資料。

這個方法不會封鎖。

參數:
地點 ID要查詢的地點 ID。
地點欄位要求清單中的地點物件個別地點欄位。
工作階段符記使用 GMSAutocompleteSessionToken 將要求與帳單工作階段建立關聯。
回呼叫用查詢結果的回呼。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: (GMSPlaceField) 地點欄位
回呼: (GMSPlaceLikelihoodsCallback) 回呼

根據使用者目前的所在位置找出可能性。

這個方法不會封鎖。

成功的回呼會在成功時叫用包含可能分數的地點陣列,以及發生錯誤時出現 NSError。

參數:
地點欄位要求清單中的地點物件個別地點欄位。
回呼用於叫用地點可能性的回呼。

- (typedef void(^ GMSPlaceResultCallback)(GMSPlace *_Nullable result、NSError *_Nullable error)) [related]

用於接收 Place Details 查詢的回呼類型。

如果發生錯誤,result 會啟動,且 error 會包含錯誤相關資訊。

參數:
結果傳回的 GMSPlace
錯誤發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_NullableOutcomeList, NSError *_Nullable error)) [related]

用於接收地點可能清單的回呼類型。

如果發生錯誤,likelihoodList 會啟動,且 error 會包含錯誤相關資訊。

參數:
可能清單可能性清單。
錯誤發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable 機率, NSError *_Nullable error)) [related]

接收 GMSPlaceLikelihood 陣列的回呼類型。

如果發生錯誤,陣列就會包含 nil,而 error 將包含錯誤的相關資訊。

- (typedef void(^ GMSAutocompletePredictionsCallback)(NSArray< GMSAutocompletePrediction * > *_Nullable results, NSError *_Nullable error)) [related]

接收自動完成結果的回呼類型。

results 是 GMSAutocompletePredictions 陣列,代表查詢的候選完成次數。

參數:
結果GMSAutocompletePrediction 的陣列。
錯誤發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlacePhotoMetadataResultCallback)(GMSPlacePhotoMetadataList *_Nullable photos, NSError *_Nullable error)) [related]

接收地點相片結果的回呼類型。

如果發生錯誤,photos 會啟動,且 error 會包含錯誤相關資訊。

參數:
相片包含 GMSPlacePhotoMetadata 物件的結果。
錯誤發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlacePhotoImageResultCallback)(UIImage *_Nullable Photo, NSError *_Nullable error)) [related]

GMSPlacePhotoMetadata 物件接收 UIImage 物件的回呼類型。

如果發生錯誤,photo 會啟動,且 error 會包含錯誤相關資訊。

參數:
相片已載入的 UIImage
錯誤發生的錯誤 (如果有的話)。