總覽
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 可能會快取圖片資料。如果快取中並沒有要求的相片,則會執行網路查詢。
- 參數:
-
相片中繼資料 要載入 UIImage
的GMSPlacePhotoMetadata
。回呼 要用載入的 UIImage
叫用的回呼。
- (void) loadPlacePhoto: | (GMSPlacePhotoMetadata *) | photoMetadata | |
constrainedToSize: | (CGSize) | 大小上限 | |
規模: | (CGFloat) | 規模 | |
回呼: | (GMSPlacePhotoImageResultCallback) | 回呼 | |
載入特定相片的圖片,並調整為指定尺寸上限。
圖片會縮放至指定尺寸,以維持原始圖片的長寬比。這項資源調度功能是在伺服器端執行。
如果 scale 參數不是 1.0 maxSize 乘上這個值,系統會將傳回的 UIImage
設為指定縮放比例。如要載入螢幕上顯示圖片,這個參數應設為螢幕縮放比例。
SDK 可能會快取圖片資料。如果快取中並沒有要求的相片,則會執行網路查詢。
- 注意:
- 套用縮放比例係數後,請確定 maxSize 中的尺寸會四捨五入至最接近的整數,然後再使用。如果要求的圖片超過大小上限,系統會傳回較小的圖片。
- 參數:
-
相片中繼資料 要載入 UIImage
的GMSPlacePhotoMetadata
。最大尺寸 圖片的大小上限, 的保護 載入圖片的縮放比例。 回呼 要用載入的 UIImage
叫用的回呼。
- (void) currentPlaceWithCallback: | (GMSPlaceLikelihoodListCallback) | 回呼 |
傳回裝置目前已知位置的預估值。
依據裝置的最後推測位置產生地點可能性清單。成功時,系統會叫用這個可能的回呼;如果發生錯誤,則會叫用 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
。錯誤 發生的錯誤 (如果有的話)。