總覽
Places SDK 的主介面。
用於搜尋和取得地點的詳細資料。此類別應通過 [GMSPlacesClient sharedClient] 方法存取。
GMSPlacesClient 方法只能從主執行緒呼叫。從其他執行緒呼叫這些方法,會導致發生例外狀況或未定義的行為。除非另有指定,否則系統會在主執行緒上叫用所有回呼。
公開成員函式 | |
(void) | - lookUpPlaceID:callback: |
取得地點的詳細資料。 | |
(void) | - fetchAutocompleteSuggestionsFromRequest:callback: |
從文字查詢尋找自動完成建議。 | |
(void) | - lookUpPhotosForPlaceID:callback: |
取得最多 10 張與地點相關的相片中繼資料。 | |
(void) | - loadPlacePhoto:callback: |
以最大尺寸載入特定相片的圖片。 | |
(void) | - loadPlacePhoto:constrainedToSize:scale:callback: |
載入特定相片的圖片,縮放至符合指定的最大尺寸。 | |
(void) | - currentPlaceWithCallback: |
傳回裝置目前已知位置的大概位置。 | |
(void) | - findAutocompletePredictionsFromQuery:filter:sessionToken:callback: |
透過文字查詢尋找自動完成預測結果。 | |
(void) | - fetchPlaceFromPlaceID:placeFields:sessionToken:callback: |
擷取地點的詳細資料。 | |
(void) | - findPlaceLikelihoodsFromCurrentLocationWithPlaceFields:callback: |
根據使用者的目前位置找出可能的地點。 | |
(void) | - isOpenWithRequest:callback: |
取得地點的營業狀態。 | |
(void) | - isOpenWithPlaceID:callback: |
取得地點詳細資料,包括判斷目前時間的GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlaceID:date:callback: |
取得地點詳細資料,包括判斷指定 NSDate 的 GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlace:callback: |
取得地點詳細資料,包括判斷目前時間的GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlace:date:callback: |
取得地點詳細資料,包括判斷指定 NSDate 的 GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - searchByTextWithRequest:callback: |
按文字和限制搜尋地點。 | |
(void) | - fetchPlaceWithRequest:callback: |
使用要求物件取得地點。 | |
(void) | - fetchPhotoWithRequest:callback: |
使用擷取相片要求來要求相片。 | |
(void) | - searchNearbyWithRequest:callback: |
搜尋特定地點和限製附近的地點。 | |
靜態公開成員函式 | |
(instancetype) | + sharedClient |
提供GMSPlacesClient適用於 Google Places SDK for iOS 的共用例項,如有必要,即可建立。 | |
(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 結果, NSError *_Nullable 錯誤) |
接收 Place Details 查詢的回呼類型。 | |
typedef void(^ | GMSPlaceLikelihoodListCallback )(GMSPlaceLikelihoodList *_Nullable 可能是 List, NSError *_Nullable error) |
接收地點可能性清單的回呼類型。 | |
typedef void(^ | GMSPlaceLikelihoodsCallback )(NSArray< GMSPlaceLikelihood * > *_Nullable 可能性, NSError *_Nullable error) |
用於接收 GMSPlaceLikelihood 陣列的回呼類型。 | |
typedef void(^ | GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nullable 結果, NSError *_Nullable error) |
接收自動完成結果的回呼類型。 | |
typedef void(^ | GMSPlacePhotoMetadataResultCallback )(GMSPlacePhotoMetadataList *_Nullable photos, NSError *_Nullable error) |
接收地點相片結果的回呼類型。 | |
typedef void(^ | GMSPlacePhotoImageResultCallback )(UIImage *_Nullable photos, NSError *_Nullable error) |
從 GMSPlacePhotoMetadata 物件接收 UIImage 物件的回呼類型。 | |
typedef void(^ | GMSPlaceOpenStatusCallback )(GMSPlaceOpenStatus結果, NSError *_Nullable 錯誤) |
用來接收地點營業時間狀態的回呼類型。 | |
typedef void(^ | GMSPlaceOpenStatusResponseCallback )(GMSPlaceIsOpenResponse *response, NSError *_Nullable 錯誤) |
接收開啟狀態回應的回呼類型。 | |
typedef void(^ | GMSPlaceSearchByTextResultCallback )(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error) |
用於接收文字搜尋結果的回呼類型。 | |
typedef void(^ | GMSFetchPhotoResultCallback )(UIImage *_Nullable photosImage, NSError *_Nullable error) |
接收相片的回呼類型。 | |
typedef void(^ | GMSAutocompleteSuggestionsCallback )(NSArray< GMSAutocompleteSuggestion * > *_Nullable results, NSError *_Nullable error) |
自動完成結果的回呼類型。 | |
typedef void(^ | GMSPlaceSearchNearbyResultCallback )(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error) |
用於接收附近搜尋結果的回呼類型。 |
成員職能說明文件
+ (執行個體類型) sharedClient |
提供GMSPlacesClient適用於 Google Places SDK for iOS 的共用例項,如有必要,即可建立。
如果應用程式經常使用方法GMSPlacesClient,我們可能希望直接持有此物件,否則您與 Google 的連線可能會定期重新啟動。
+ (BOOL) ProvideAPIKey: | (NSString *) | 鍵 |
將 API 金鑰提供給 Google Places SDK for iOS。
系統是透過 Google Cloud Platform 主控台為應用程式產生這個金鑰,並與您應用程式的繫結 ID 配對,以便識別金鑰。在使用 GMSPlacesClient 之前,您的應用程式應呼叫此方法 (例如 in application:didFinishLaunchingWithOptions:)。
- 傳回:
- 如果已成功提供 APIKey,則答案為是。
+ (NSString *) openSourceLicenseInfo |
傳回 Google Places SDK for iOS 的開放原始碼軟體授權資訊。
這項資訊必須在申請中提供。
+ (NSString *) SDKVersion |
傳回此版本的 Google Places SDK for iOS 版本。
,直接在 Google Cloud 控制台實際操作。例如「1.0.0」。
+ (NSString *) SDKLongVersion |
傳回此版本的 Google Places SDK for iOS 完整版本。
,直接在 Google Cloud 控制台實際操作。例如「1.0.0」 (102.1)。
- (void) LookUpPlaceID: | (NSString *) | placeID | |
回呼: | (GMSPlaceResultCallback) | 回呼 | |
取得地點的詳細資料。
此方法屬於非阻塞式。
- 參數:
-
placeID 要查詢的地點 ID。 回呼 使用查詢結果叫用的回呼。
- 注意:
- 這項功能已淘汰,這個方法已由
fetchPlaceWithRequest:callback:
取代,並將在日後推出的版本中移除。
- (void) extractAutocompleteSuggestionsFromRequest: | (GMSAutocompleteRequest *) | 要求 | |
回呼: | (GMSAutocompleteSuggestionsCallback) | 回呼 | |
從文字查詢尋找自動完成建議。
您可以選擇將結果偏向特定位置,或限制在某個地區。此方法屬於非阻塞式。
成功時,系統會用自動完成建議陣列叫用提供的回呼,並在發生錯誤時發出 NSError。
- 參數:
-
申請。 自動完成功能的 GMSAutocompleteRequest
要求。回呼 使用建議叫用的回呼。
- (void) LookUpPhotosForPlaceID: | (NSString *) | placeID | |
回呼: | (GMSPlacePhotoMetadataResultCallback) | 回呼 | |
取得最多 10 張與地點相關的相片中繼資料。
相片取自各種地點,包括商家業主和 Google+ 使用者所提供的相片。在大多數情況下,使用這些相片時可以不包含作者資訊,圖片本身也可能已加入必要的作者資訊。不過,您必須在回應中使用 attributions
屬性來擷取任何其他所需的作者資訊,並在每次顯示圖片時在應用程式中顯示這些作者資訊。最多只能傳回 10 張相片。
此方法多次呼叫可能會每次都傳回相同的相片。不過,由於基礎資料可能已經變更,因此無法保證情況。
這個方法會執行網路查詢。
- 參數:
-
placeID 用於查詢相片的地點 ID。 回呼 使用查詢結果叫用的回呼。
- (void) loadPlacePhoto: | (GMSPlacePhotoMetadata *) | photoMetadata | |
回呼: | (GMSPlacePhotoImageResultCallback) | 回呼 | |
以最大尺寸載入特定相片的圖片。
SDK 可能會快取圖片資料。如果快取中沒有要求的相片,則會執行網路查詢。
- 參數:
-
photoMetadata 用於載入 UIImage
的GMSPlacePhotoMetadata
。回呼 使用已載入 UIImage
叫用的回呼。
- (void) loadPlacePhoto: | (GMSPlacePhotoMetadata *) | photoMetadata | |
constrainedToSize: | (CGSize) | maxSize | |
縮放比例: | (CGFloat) | 縮放 | |
回呼: | (GMSPlacePhotoImageResultCallback) | 回呼 | |
載入特定相片的圖片,縮放至符合指定的最大尺寸。
圖片會調整大小以符合指定的尺寸,同時維持原始圖片的長寬比。這項擴充作業會在伺服器端執行。
如果 scale 參數不是 1.0 maxSize 會乘以這個值,則傳回的 UIImage
會設為指定的縮放比例。如要載入要在螢幕上顯示的圖片,這個參數應設為螢幕縮放比例。
SDK 可能會快取圖片資料。如果快取中沒有要求的相片,則會執行網路查詢。
- 注意:
- 套用縮放比例係數後,maxSize 中的維度將無條件進位至最接近的整數。如果要求的圖片超過可用大小上限,系統可能會傳回較小的圖片。
- 參數:
-
photoMetadata 用於載入 UIImage
的GMSPlacePhotoMetadata
。maxSize 圖片的大小上限。 的保護 用於載入圖片的比例。 回呼 使用已載入 UIImage
叫用的回呼。
- (void) currentPlaceWithCallback: | (GMSPlaceLikelihoodListCallback) | 回呼 |
傳回裝置目前已知位置的大概位置。
根據裝置最後的大概位置產生地點可能性清單。成功時,系統會使用此可能性清單叫用提供的回呼,並在發生錯誤時發出 NSError。
- 注意:
- 如要使用這個方法,您的應用程式必須有權存取目前裝置的位置資訊。呼叫這個方法前,請務必使用 [CLLocationManager requestWhenInUseAuthorization] 或 [CLLocationManager requestAlwaysAuthorization] ,要求存取使用者的位置資訊。如果您呼叫這個方法,且應用程式沒有正確的授權狀態,系統就會呼叫回呼,並顯示錯誤。
- 參數:
-
回呼 使用地點可能性清單叫用的回呼。
- (void) findAutocompletePredictionsFromQuery: | (NSString *) | 查詢 | |
篩選器: | (可為空值GMSAutocompleteFilter *) | 篩選器 | |
sessionToken: | (可為空值GMSAutocompleteSessionToken *) | sessionToken | |
回呼: | (GMSAutocompletePredictionsCallback) | 回呼 | |
透過文字查詢尋找自動完成預測結果。
您可以選擇將結果偏向特定位置,或限制在某個地區。此方法屬於非阻塞式。
成功時,系統會用自動完成預測陣列叫用提供的回呼,並在發生錯誤時發出 NSError。
- 參數:
-
查詢 要自動完成的部分文字。 篩選器 要套用至結果的篩選器。這個參數可以是 nil。 sessionToken 用來將要求與帳單工作階段建立關聯的 GMSAutocompleteSessionToken
。回呼 使用預測叫用的回呼。
- (void) extractPlaceFromPlaceID: | (NSString *) | placeID | |
placeFields: | (GMSPlaceField) | placeFields | |
sessionToken: | (可為空值GMSAutocompleteSessionToken *) | sessionToken | |
回呼: | (GMSPlaceResultCallback) | 回呼 | |
擷取地點的詳細資料。
此方法屬於非阻塞式。
- 參數:
-
placeID 要查詢的地點 ID。 placeFields 針對清單中地點物件要求的個別地點欄位。 sessionToken 用來將要求與帳單工作階段建立關聯的 GMSAutocompleteSessionToken
。回呼 使用查詢結果叫用的回呼。
- 注意:
- 這項功能已淘汰,這個方法已由
fetchPlaceWithRequest:callback: callback:
取代,並將在日後推出的版本中移除。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: | (GMSPlaceField) | placeFields | |
回呼: | (GMSPlaceLikelihoodsCallback) | 回呼 | |
根據使用者的目前位置找出可能的地點。
此方法屬於非阻塞式。
系統會用一組地點的陣列叫用提供的回呼,並在呼叫成功時傳回可能性分數,並在發生錯誤時發出 NSError。
- 參數:
-
placeFields 針對清單中地點物件要求的個別地點欄位。 回呼 與地點可能性叫用的回呼。
- (void) isOpenWithRequest: | (GMSPlaceIsOpenRequest *) | isOpenRequest | |
回呼: | (GMSPlaceOpenStatusResponseCallback) | 回呼 | |
取得地點的營業狀態,包括判斷指定 NSDate 的 GMSPlaceOpenStatus
所需的所有屬性。此方法屬於非阻塞式。
- 參數:
-
isOpenRequest 用來判斷特定地點營業狀態的要求。 回呼 使用開啟狀態回應叫用的回呼。
- (void) isOpenWithPlaceID: | (NSString *) | placeID | |
回呼: | (GMSPlaceOpenStatusCallback) | 回呼 | |
取得地點的營業狀態,包括決定目前時間的「GMSPlaceOpenStatus
」所需的所有欄位。
此方法屬於非阻塞式。
- 參數:
-
placeID 要查詢的地點 ID。 回呼 使用地點結果叫用的回呼。
- (void) isOpenWithPlaceID: | (NSString *) | placeID | |
日期: | (NSDate *) | 日期 | |
回呼: | (GMSPlaceOpenStatusCallback) | 回呼 | |
取得地點的營業狀態,包括判斷指定 NSDate
的 GMSPlaceOpenStatus
所需的所有欄位。
此方法屬於非阻塞式。
- 參數:
-
placeID 要查詢的地點 ID。 日期 用來判斷開啟狀態的 NSDate
。回呼 使用地點結果叫用的回呼。
- (void) isOpenWithPlace: | (GMSPlace *) | 地點 | |
回呼: | (GMSPlaceOpenStatusCallback) | 回呼 | |
- (void) isOpenWithPlace: | (GMSPlace *) | 地點 | |
日期: | (NSDate *) | 日期 | |
回呼: | (GMSPlaceOpenStatusCallback) | 回呼 | |
取得地點詳細資料,包括判斷指定 NSDate
的 GMSPlaceOpenStatus
所需的所有欄位。
只有在 GMSPlace
沒有所有必要欄位時,才要求額外欄位,否則要求 GMSPlaceOpenStatus\ will be returned in the callback immediately. This method is non-blocking.
- Parameters:
-
place The GMSPlace
to lookup.
date The NSDate
to determine open status for.
callback The callback to invoke with the place result.
- (void) searchByTextWithRequest: | (GMSPlaceSearchByTextRequest *) | textSearchRequest | |
回呼: | (GMSPlaceSearchByTextResultCallback) | 回呼 | |
- (void) extractPlaceWithRequest: | (GMSFetchPlaceRequest *) | fetchPlaceRequest | |
回呼: | (GMSPlaceResultCallback) | 回呼 | |
- (void) extractPhotoWithRequest: | (GMSFetchPhotoRequest *) | fetchPhotoRequest | |
回呼: | (GMSFetchPhotoResultCallback) | 回呼 | |
- (void) searchNearbyWithRequest: | (GMSPlaceSearchNearbyRequest *) | searchNearbyRequest | |
回呼: | (GMSPlaceSearchNearbyResultCallback) | 回呼 | |
搜尋特定地點和限製附近的地點。
此方法屬於非阻塞式。
- 參數:
-
searchNearbyRequest GMSPlaceSearchNearbyRequest
要用於查詢的搜尋附近要求。回呼 使用查詢結果叫用的回呼。
好友及相關功能說明文件
- (typedef void(^ GMSPlaceResultCallback)(GMSPlace *_Nullable result, NSError *_Nullable error) [related] |
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_Nullable 可能是 List, NSError *_Nullable error)) [related] |
接收地點可能性清單的回呼類型。
如果發生錯誤,likelihoodList
為空值,error
會包含錯誤相關資訊。
- 參數:
-
likelihoodList 地點可能性清單。 錯誤 發生的錯誤 (如有)。
- (typedef void(^ GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable 可能 s, 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 photos, NSError *_Nullable error) [related] |
從 GMSPlacePhotoMetadata
物件接收 UIImage
物件的回呼類型。
如果發生錯誤,photo
為空值,error
會包含錯誤相關資訊。
- 參數:
-
相片 載入的 UIImage
。錯誤 發生的錯誤 (如有)。
- (typedef void(^ GMSPlaceOpenStatusCallback)(GMSPlaceOpenStatus結果, NSError *_Nullable 錯誤) [related] |
用來接收地點營業時間狀態的回呼類型。
如果發生錯誤,result
會是 GMSPlaceOpenStatusUnknown,error
會包含錯誤相關資訊。
- 參數:
-
結果 傳回的 GMSPlaceOpenStatus
。錯誤 發生的錯誤 (如有)。
- (typedef void(^ GMSPlaceOpenStatusResponseCallback)(GMSPlaceIsOpenResponse *response, NSError *_Nullable error) [related] |
接收開啟狀態回應的回呼類型。
如果發生錯誤,回應將處於 GMSPlaceOpenStatusUnknown 狀態,且錯誤將包含錯誤相關資訊。
- 參數:
-
回應 傳回的 GMSPlaceIsOpenResponse
。錯誤 發生的錯誤 (如有)。
- (typedef void(^ GMSPlaceSearchByTextResultCallback)(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error) [related] |
- (typedef void(^ GMSFetchPhotoResultCallback)(UIImage *_Nullable photosImage, NSError *_Nullable error) [related] |
接收相片的回呼類型。
photoImage
是 UIImage
,代表符合指定要求的結果。如果發生錯誤,photoImage
為空值,error
會包含錯誤相關資訊。
- 參數:
-
photoImage UIImage
結果。
- (typedef void(^ GMSAutocompleteSuggestionsCallback)(NSArray< GMSAutocompleteSuggestion * > *_Nullable results, NSError *_Nullable error) [related] |
自動完成結果的回呼類型。
- 參數:
-
結果 GMSAutocompleteSuggestion
的陣列。錯誤 發生的錯誤 (如有)。
- (typedef void(^ GMSPlaceSearchNearbyResultCallback)(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error) [related] |
用於接收附近搜尋結果的回呼類型。
- 參數:
-
個地點 GMSPlace
的陣列錯誤 發生的錯誤 (如有)。