總覽
Places SDK 的主要介面。
用於搜尋及取得地點的詳細資料。此類別應透過 [GMSPlacesClient sharedClient] 方法存取。
GMSPlacesClient 方法只能從主執行緒呼叫。從其他執行緒呼叫這些方法將導致例外狀況或未定義的行為。除非另有指定,否則系統會在主執行緒上叫用所有回呼。
公開成員函式 | |
(void) | - lookUpPlaceID: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) | - isOpenWithPlaceID:callback: |
取得地點的詳細資料,包括目前判斷 GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlaceID:date:callback: |
取得地點的詳細資料,包括在指定的 NSDate 中指定 GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlace:callback: |
取得地點的詳細資料,包括目前判斷 GMSPlaceOpenStatus 所需的所有欄位。 | |
(void) | - isOpenWithPlace:date:callback: |
取得地點的詳細資料,包括在指定的 NSDate 中指定 GMSPlaceOpenStatus 所需的所有欄位。 | |
靜態公開成員函式 | |
(執行個體類型) | + 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 結果, NSError *_Nullable error) |
用於接收 Place Details 查詢的回呼類型。 | |
typedef void(^ | GMSPlaceLikelihoodListCallback )(GMSPlaceLikelihoodList *_NullablePotentialList, NSError *_Nullable error) |
用於接收地點可能清單的回呼類型。 | |
typedef void(^ | GMSPlaceLikelihoodsCallback )(NSArray< GMSPlaceLikelihood * > *_Nullable 可能 s, NSError *_Nullable 錯誤) |
用於接收 GMSPlaceLikelihood 陣列的回呼類型。 | |
typedef void(^ | GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nullable 結果, NSError *_Nullable error) |
接收自動完成結果的回呼類型。 | |
typedef void(^ | GMSPlacePhotoMetadataResultCallback )(GMSPlacePhotoMetadataList *_Nullable 相片, NSError *_Nullable 錯誤) |
用於接收地點相片搜尋結果的回呼類型。 | |
typedef void(^ | GMSPlacePhotoImageResultCallback )(UIImage *_Nullable 相片, NSError *_Nullable 錯誤) |
從 GMSPlacePhotoMetadata 物件接收 UIImage 物件的回呼類型。 | |
typedef void(^ | GMSPlaceOpenStatusCallback )(GMSPlaceOpenStatus 結果,NSError *_Nullable 錯誤) |
用於接收「地點」營業時間狀態的回呼類型。 |
成員函式說明文件
+ (instancetype) sharedClient |
提供 Google Places SDK for iOS 的共用例項 GMSPlacesClient,視需要建立。
若您的應用程式經常使用GMSPlacesClient類的方法,它可能會想要直接覆蓋這個物件,否則您與 Google 的連線可能會定期重新開機。
+ (BOOL) provideAPIKey: | (NSString *) | key |
將您的 API 金鑰提供給 Google Places SDK for iOS。
這個金鑰是透過 Google Cloud Platform 主控台為您的應用程式產生,並與應用程式的軟體包 ID 配對,以供辨識。您的應用程式在使用前必須呼叫此功能GMSPlacesClient (例如 app:didFinishLaunchingWithOptions:)。
- 傳回:
- 如果成功提供 APIKey,則為 是。
+ (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)」。
- (無效) LookUpPlaceID: | (NSString *) | placeID | |
回呼: | (GMSPlaceResultCallback) | 回呼 | |
取得地點詳細資料。
這個方法屬於非阻塞式做法。
- 參數:
-
placeID 要查詢的地點 ID。 回呼 搭配查詢結果叫用的回呼。
- (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 | |
constraintToSize: | (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) fetchPlaceFromPlaceID: | (NSString *) | placeID | |
placeFields: | (GMSPlaceField) | placeFields | |
sessionToken: | (可為空值 GMSAutocompleteSessionToken *) | sessionToken | |
回呼: | (GMSPlaceResultCallback) | 回呼 | |
擷取地點的詳細資料。
這個方法屬於非阻塞式做法。
- 參數:
-
placeID 要查詢的地點 ID。 placeFields 針對清單中地點物件要求的個別地點欄位。 sessionToken 將要求與計費工作階段建立關聯的 GMSAutocompleteSessionToken
。回呼 搭配查詢結果叫用的回呼。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: | (GMSPlaceField) | placeFields | |
回呼: | (GMSPlaceLikelihoodsCallback) | 回呼 | |
根據使用者的目前位置尋找地點可能性。
這個方法屬於非阻塞式做法。
系統會叫用提供的回呼,當中包含可能成功分數的地點陣列,並在發生錯誤時傳回 NSError。
- 參數:
-
placeFields 針對清單中地點物件要求的個別地點欄位。 回呼 搭配地點可能性叫用的回呼。
- (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.
好友與相關函式說明文件
- (typedef void(^ GMSPlaceResultCallback)(GMSPlace *_Nullable 結果, NSError *_Nullable error) [related] |
用於接收 Place Details 查詢的回呼類型。
如果發生錯誤,result
會顯示為 nil,error
則包含錯誤相關資訊。
- 參數:
-
結果 傳回的 GMSPlace
。錯誤 發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_NullablePotentialList, NSError *_Nullable error) [related] |
用於接收地點可能清單的回呼類型。
如果發生錯誤,likelihoodList
會顯示為 nil,error
則包含錯誤相關資訊。
- 參數:
-
likelihoodList 地點可能性清單。 錯誤 發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable 可能性, NSError *_Nullable error)) [related] |
用於接收 GMSPlaceLikelihood
陣列的回呼類型。
如果發生錯誤,陣列會顯示 nil,error
則會包含錯誤相關資訊。
- (typedef void(^ GMSAutocompletePredictionsCallback)(NSArray< GMSAutocompletePrediction * > *_Nullable 結果, NSError *_Nullable error)) [related] |
接收自動完成結果的回呼類型。
results
是 GMSAutocompletePredictions 的陣列,代表查詢的候選完成項目。
- 參數:
-
結果 GMSAutocompletePrediction
的陣列。錯誤 發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlacePhotoMetadataResultCallback)(GMSPlacePhotoMetadataList *_Nullable 相片, NSError *_Nullable error) [related] |
用於接收地點相片搜尋結果的回呼類型。
如果發生錯誤,photos
會顯示為 nil,error
則包含錯誤相關資訊。
- 參數:
-
相片 包含 GMSPlacePhotoMetadata
物件的結果。錯誤 發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlacePhotoImageResultCallback)(UIImage *_Nullable 相片, NSError *_Nullable error)) [related] |
從 GMSPlacePhotoMetadata
物件接收 UIImage
物件的回呼類型。
如果發生錯誤,photo
會顯示為 nil,error
則包含錯誤相關資訊。
- 參數:
-
相片 已載入的 UIImage
。錯誤 發生的錯誤 (如果有的話)。
- (typedef void(^ GMSPlaceOpenStatusCallback)(GMSPlaceOpenStatus結果,NSError *_Nullable 錯誤) [related] |
用於接收「地點」營業時間狀態的回呼類型。
如果發生錯誤,result
將顯示 GMSPlaceOpenStatusUnknown,error
將包含錯誤相關資訊。
- 參數:
-
結果 傳回的 GMSPlaceOpenStatus
。錯誤 發生的錯誤 (如果有的話)。