GMSPlacesClient 类参考


概览

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:callbackfindPlaceLikelihoodsFromCurrentLocationWithPlaceFields:callback:
 使用用户当前位置查找地点可能性。
(void) - isOpenWithRequest:callback:
 获取某个地点的营业状态。
(void) - isOpenWithPlaceID:callback:
 获取某个地点的详细信息,其中包括确定当前时间的 GMSPlaceOpenStatus 所需的所有字段。
(void) - isOpenWithPlaceID:date:callback:
 获取某个地点的详细信息,其中包含确定指定 NSDateGMSPlaceOpenStatus 所需的所有字段。
(void) - isOpenWithPlace:callback:
 获取某个地点的详细信息,其中包括确定当前时间的 GMSPlaceOpenStatus 所需的所有字段。
(void) - isOpenWithPlace:date:callback:
 获取某个地点的详细信息,其中包含确定指定 NSDateGMSPlaceOpenStatus 所需的所有字段。
(void) - searchByTextWithRequest:callbacksearchByTextWithRequest:callback:
 按文字和限制条件搜索地点。
(void) -fetchPlaceWithRequest:callbackfetchPlaceWithRequest:callback:
 使用请求对象获取地点。
(void) - fetchPhotoWithRequest:callback:
 使用提取照片请求请求照片。
(void) - searchNearbyWithRequest:callback:
 搜索某个位置和限制附近的地点。

静态公开成员函数

(instancetype)+ sharedClient
 为 Google Places SDK for iOS 提供 GMSPlacesClient 的共享实例,必要时可创建该实例。
(BOOL)+ provideAPIKey
 向 Google Places SDK for iOS 提供 API 密钥。
(NSString *) + openSourceLicenseInfo
 返回 Google Places SDK for iOS 的开源软件许可信息。
(NSString *) + SDKVersion
 返回此版本的 Google Places SDK for iOS 的版本。
(NSString *) + SDKLongVersion
 返回此版本 Google Places SDK for iOS 的详细版本。

(请注意,这些并非成员函数。)

类型定义符 void(^GMSPlaceResultCallback )(GMSPlace *_Nullable 结果、NSError *_Nullable 错误)GMSPlace
 用于接收地点详情查询的回调类型。
类型定义符 void(^GMSPlaceLikelihoodListCallback )(GMSPlaceLikelihoodList *_NullableabilityList、NSError *_Nullable 错误)GMSPlaceLikelihoodList
 用于接收地点可能性列表的回调类型。
类型定义符 void(^GMSPlaceLikelihoodsCallback )(NSArray< GMSPlaceLikelihood * > *_Nullable 可能性、NSError *_Nullable 错误)
 用于接收 GMSPlaceLikelihood 数组的回调类型。
类型定义符 void(^GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nullable results, NSError *_Nullable error)
 用于接收自动补全结果的回调类型。
类型定义符 void(^GMSPlacePhotoMetadataResultCallback)(GMSPlacePhotoMetadataList *_Nullable photos、NSError *_Nullable 错误)
 用于接收地点照片结果的回调类型。
类型定义符 void(^GMSPlacePhotoImageResultCallback)(UIImage *_Nullable 照片、NSError *_Nullable 错误)
 用于从 GMSPlacePhotoMetadata 对象接收 UIImage 对象的回调类型。
类型定义符 void(^GMSPlaceOpenStatusCallback)(GMSPlaceOpenStatus 结果、NSError *_Nullable 错误)
 用于接收地点的营业时间状态的回调类型。
类型定义符 void(^GMSPlaceOpenStatusResponseCallback )(GMSPlaceIsOpenResponse *响应、NSError *_Nullable 错误)
 用于接收打开状态响应的回调类型。
类型定义符 void(^GMSPlaceSearchByTextResultCallback )(NSArray< GMSPlace * > *_Nullable places、NSError *_Nullable 错误)
 用于接收按文字结果搜索的回调类型。
类型定义符 void(^GMSFetchPhotoResultCallback)(UIImage *_Nullable photoImage, NSError *_Nullable 错误)
 用于接收照片的回调类型。
类型定义符 void(^GMSAutocompleteSuggestionsCallback )(NSArray< GMSAutocompleteSuggestion * > *_Nullable results, NSError *_Nullable 错误)
 自动补全结果的回调类型。
类型定义符 void(^GMSPlaceSearchNearbyResultCallback )(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable 错误)
 用于接收附近搜索结果的回调类型。

成员函数文档

+ (instancetype) sharedClient

为 Google Places SDK for iOS 提供 GMSPlacesClient 的共享实例,必要时可创建该实例。

如果您的应用经常使用GMSPlacesClient,则可能需要直接保留此对象,否则您与 Google 的连接可能会定期重新启动。

+ (BOOL) provideAPIKey: (NSString *)  key

向 Google Places SDK for iOS 提供 API 密钥。

此密钥通过 Google Cloud Platform Console 为您的应用生成,并与应用的软件包 ID 配对以用于识别该密钥。在使用GMSPlacesClient之前,您的应用应调用此方法(例如,在 application:didFinishLaunchingWithOptions:中)。

返回
如果已成功提供 APIKey,则为 YES。
+ (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) lookUpPlaceID: (NSString *)  placeID
回调: (GMSPlaceResultCallback) 回调函数

获取地点的详细信息。

此方法不会阻塞。

参数:
placeID要查询的地点 ID。
callback通过查询结果调用的回调。
注意
此 API 已弃用。此方法已被 fetchPlaceWithRequest:callback: 取代,并将在未来的版本中移除。
- (void)fetchAutocompleteSuggestionsFromRequest: (GMSAutocompleteRequest *) 请求
回调: GMSAutocompleteSuggestionsCallback 回调函数

根据文本查询查找自动补全建议。

结果可以有选择地偏向于某个位置或限制于某个区域。此方法不会阻塞。

成功时,系统会使用自动补全建议数组调用所提供的回调函数,并在出现错误时返回 NSError。

参数:
request用于自动补全的 GMSAutocompleteRequest 请求。
callback使用建议调用的回调。
- (void) lookUpPhotosForPlaceID: (NSString *)  placeID
回调: (GMSPlacePhotoMetadataResultCallback) 回调函数

获取与某个地点相关联的最多 10 张照片的元数据。

照片来源于不同的地点,包括商家所有者和 Google+ 用户贡献的照片。在大多数情况下,使用这些照片时可以不包含提供方说明,或将必需的提供方说明作为图片的一部分。不过,您必须在响应中使用 attributions 属性来检索所需的任何其他提供方说明,并将这些提供方说明在应用中显示在任何显示该图片的位置。最多返回 10 张照片。

多次调用此方法可能会每次返回相同的照片。不过,我们无法保证这一点,因为底层数据可能已经发生变化。

该方法会执行网络查找。

参数:
placeID要为其查找照片的地点 ID。
callback通过查询结果调用的回调。
- (void) loadPlacePhoto: (GMSPlacePhotoMetadata *) photoMetadata
回调: (GMSPlacePhotoImageResultCallback) 回调函数

以最大尺寸加载特定照片的图片。

SDK 可能会缓存图片数据。如果缓存中不存在请求的照片,则会执行网络查找。

参数:
photoMetadata要加载 UIImageGMSPlacePhotoMetadata
callback使用加载的 UIImage 调用的回调。
- (void) loadPlacePhoto: (GMSPlacePhotoMetadata *) photoMetadata
constrainedToSize: (CGSize) maxSize
(CGFloat) 扩缩
回调: (GMSPlacePhotoImageResultCallback) 回调函数

加载特定照片的图片,该图片会进行缩放以适应指定的最大尺寸。

图片将被缩放以适应指定尺寸,同时保持原始图片的宽高比。这种扩缩在服务器端执行。

如果 scale 参数不为 1.0,则 maxSize 将乘以此值,并且返回的 UIImage 将设置为采用指定比例。如果您要加载要在屏幕上显示的图片,则应将此参数设置为屏幕缩放比例。

SDK 可能会缓存图片数据。如果缓存中不存在请求的照片,则会执行网络查找。

注意
应用缩放比例后,maxSize 中的尺寸将四舍五入为最接近的整数,如果请求的图片大于可用的最大尺寸,系统可能会返回较小的图片。
<ph type="x-smartling-placeholder">
</ph>
参数:
photoMetadata要加载 UIImageGMSPlacePhotoMetadata
maxSize图片的最大尺寸。
和 WAF图片的加载比例。
callback使用加载的 UIImage 调用的回调。

返回设备当前已知所在地点的估算值。

根据设备最近一次的估计位置生成地点可能性列表。成功时,所提供的回调将通过此可能性列表调用,并在发生错误时返回 NSError。

注意
此方法要求您的应用有权访问设备当前的位置信息。在调用该方法之前,请务必使用 [CLLocationManager requestWhenInUseAuthorization] 或 [CLLocationManager requestAlwaysAuthorization] 请求对用户位置的访问权限。如果您调用此方法,但应用的授权状态不正确,系统将调用回调函数并返回错误。
<ph type="x-smartling-placeholder">
</ph>
参数:
callback使用地点可能性列表调用的回调。
- (void) findAutocompletePredictionsFromQuery: (NSString *)  query
过滤条件: (可为 null 的GMSAutocompleteFilter *) filter
sessionToken: (可为 null 的GMSAutocompleteSessionToken *) sessionToken
回调: (GMSAutocompletePredictionsCallback) 回调函数

根据文本查询查找自动补全预测结果。

结果可以有选择地偏向于某个位置或限制于某个区域。此方法不会阻塞。

成功时,系统会使用一个自动补全预测结果数组调用所提供的回调函数,并在出现错误时返回 NSError。

参数:
查询要自动补全的部分文本。
filter要应用于结果的过滤条件。此参数可为 nil。
sessionToken用于将请求与结算会话相关联的 GMSAutocompleteSessionToken
callback通过预测调用的回调。
- (void)fetchPlaceFromPlaceID: (NSString *)  placeID
placeFields: GMSPlaceField placeFields
sessionToken: (可为 null 的GMSAutocompleteSessionToken *) sessionToken
回调: (GMSPlaceResultCallback) 回调函数

提取地点的详细信息。

此方法不会阻塞。

参数:
placeID要查询的地点 ID。
placeFields为列表中的地点对象请求的各个地点字段。
sessionToken用于将请求与结算会话相关联的 GMSAutocompleteSessionToken
callback通过查询结果调用的回调。
注意
此 API 已弃用。此方法已被 fetchPlaceWithRequest:callback: callback: 取代,并将在未来的版本中移除。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: GMSPlaceField placeFields
回调: (GMSPlaceLikelihoodsCallback) 回调函数

使用用户当前位置查找地点可能性。

此方法不会阻塞。

调用所提供的回调函数时,如果成功,则使用包含可能性分数的地点数组调用所提供的回调;如果发生错误,则调用 NSError。

参数:
placeFields为列表中的地点对象请求的各个地点字段。
callback使用地点可能性调用的回调。
- (void) isOpenWithRequest: (GMSPlaceIsOpenRequest *) isOpenRequest
回调: (GMSPlaceOpenStatusResponseCallback) 回调函数

获取某个地点的营业状态,其中包括确定指定 NSDate 的 GMSPlaceOpenStatus 所需的所有属性。此方法不会阻塞。

参数:
isOpenRequest用于确定指定地点营业状态的请求。
callback要使用打开状态响应调用的回调。
- (void) isOpenWithPlaceID: (NSString *)  placeID
回调: (GMSPlaceOpenStatusCallback) 回调函数

获取某个地点的营业状态,其中包括确定当前时间的 GMSPlaceOpenStatus 所需的所有字段。

此方法不会阻塞。

参数:
placeID要查询的地点 ID。
callback使用地点结果调用的回调。
- (void) isOpenWithPlaceID: (NSString *)  placeID
日期: (NSDate *) 日期
回调: (GMSPlaceOpenStatusCallback) 回调函数

获取某个地点的营业状态,包括确定指定 NSDateGMSPlaceOpenStatus 所需的所有字段。

此方法不会阻塞。

参数:
placeID要查询的地点 ID。
date要确定其打开状态的 NSDate
callback使用地点结果调用的回调。
- (void) isOpenWithPlace: GMSPlace *) 地点
回调: (GMSPlaceOpenStatusCallback) 回调函数

获取某个地点的营业状态,其中包括确定当前时间的 GMSPlaceOpenStatus 所需的所有字段。

仅当 GMSPlace 不包含所有必填字段时,才请求附加字段,否则将立即在回调中返回 GMSPlaceOpenStatus。此方法不会阻塞。

参数:
地点要查找的 GMSPlace
callback使用地点结果调用的回调。
- (void) isOpenWithPlace: GMSPlace *) 地点
日期: (NSDate *) 日期
回调: (GMSPlaceOpenStatusCallback) 回调函数

获取某个地点的详细信息,其中包含确定指定 NSDateGMSPlaceOpenStatus 所需的所有字段。

仅当 GMSPlace 不包含所有必填字段时,才请求附加字段,否则为 GMSPlaceOpenStatus\ will be returned in the callback immediately. This method is non-blocking.

Parameters:
placeThe GMSPlace to lookup.
dateThe NSDate to determine open status for.
callbackThe callback to invoke with the place result.

- (void) searchByTextWithRequest: (GMSPlaceSearchByTextRequest *) textSearchRequest
回调: (GMSPlaceSearchByTextResultCallback) 回调函数

按文字和限制条件搜索地点。

此方法不会阻塞。

参数:
textSearchRequestGMSPlaceSearchByTextRequest:要用于查询的文本请求。
callback通过查询结果调用的回调。
- (void)fetchPlaceWithRequest: (GMSFetchPlaceRequest *) fetchPlaceRequest
回调: (GMSPlaceResultCallback) 回调函数

使用请求对象获取地点。

此方法不会阻塞。

参数:
fetchPlaceRequestGMSFetchPlaceRequest:用于查询的提取地点请求。
callback使用地点结果调用的回调。
- (void)fetchPhotoWithRequest: (GMSFetchPhotoRequest *) fetchPhotoRequest
回调: (GMSFetchPhotoResultCallback) 回调函数

使用提取照片请求请求照片。

此方法不会阻塞。

参数:
fetchPhotoRequestGMSFetchPhotoRequest:要使用的照片请求。
callback使用 NSURL 结果调用的回调。
- (void) searchNearbyWithRequest: (GMSPlaceSearchNearbyRequest *) searchNearbyRequest
回调: (GMSPlaceSearchNearbyResultCallback) 回调函数

搜索某个位置和限制附近的地点。

此方法不会阻塞。

参数:
searchNearbyRequestGMSPlaceSearchNearbyRequest:用于查询的“搜索周边”请求。
callback通过查询结果调用的回调。

- (typedef void(^ GMSPlaceResultCallback)(GMSPlace *_Nullable 结果、NSError *_Nullable 错误)) [related]

用于接收地点详情查询的回调类型。

如果发生错误,result 将为 nil,error 将包含有关错误的信息。

参数:
结果返回的 GMSPlace
错误发生的错误(如果有)。
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_Nullable mightList, 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 results, NSError *_Nullable error)) [related]

用于接收自动补全结果的回调类型。

results 是一个 GMSAutocompletePredictions 数组,表示候选查询的完成情况。

参数:
结果GMSAutocompletePrediction 的数组。
错误发生的错误(如果有)。
- (typedef void(^ GMSPlacePhotoMetadataResultCallback)(GMSPlacePhotoMetadataList *_Nullable photos, NSError *_Nullable error)) [related]

用于接收地点照片结果的回调类型。

如果发生错误,photos 将为 nil,error 将包含有关错误的信息。

参数:
照片包含 GMSPlacePhotoMetadata 对象的结果。
错误发生的错误(如果有)。
- (typedef void(^ GMSPlacePhotoImageResultCallback)(UIImage *_Nullable photo, NSError *_Nullable error)) [related]

用于从 GMSPlacePhotoMetadata 对象接收 UIImage 对象的回调类型。

如果发生错误,photo 将为 nil,error 将包含有关错误的信息。

参数:
照片已加载的 UIImage
错误发生的错误(如果有)。
- (typedef void(^ GMSPlaceOpenStatusCallback)(GMSPlaceOpenStatus 结果、NSError *_Nullable 错误)) [related]

用于接收地点的营业时间状态的回调类型。

如果发生错误,result 将为 GMSPlaceOpenStatusUnknown,且 error 将包含有关错误的信息。

参数:
结果返回的 GMSPlaceOpenStatus
错误发生的错误(如果有)。
- (typedef void(^ GMSPlaceOpenStatusResponseCallback)(GMSPlaceIsOpenResponse *response, NSError *_Nullable error)) [related]

用于接收打开状态响应的回调类型。

如果发生错误,响应的状态为 GMSPlaceOpenStatusUnknown,且 error 将包含有关错误的信息。

参数:
Response返回的 GMSPlaceIsOpenResponse
错误发生的错误(如果有)。
- (typedef void(^ GMSPlaceSearchByTextResultCallback)(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error)) [related]

用于接收按文字结果搜索的回调类型。

results 是一个 GMSPlace 数组,表示与查询匹配的各个结果。

参数:
结果GMSPlace 的数组。
错误发生的错误(如果有)。
- (typedef void(^ GMSFetchPhotoResultCallback)(UIImage *_Nullable photoImage, NSError *_Nullable error)) [related]

用于接收照片的回调类型。

photoImage 是表示与指定请求匹配的生成的照片的 UIImage。如果发生错误,photoImage 将为 nil,error 将包含有关错误的信息。

参数:
photoImageUIImage 结果。
- (typedef void(^ GMSAutocompleteSuggestionsCallback)(NSArray< GMSAutocompleteSuggestion * > *_Nullable results, NSError *_Nullable error)) [related]

自动补全结果的回调类型。

参数:
结果GMSAutocompleteSuggestion 的数组。
错误发生的错误(如果有)。
- (typedef void(^ GMSPlaceSearchNearbyResultCallback)(NSArray< GMSPlace * > *_Nullable places, NSError *_Nullable error)) [related]

用于接收附近搜索结果的回调类型。

参数:
个地点GMSPlace 的数组
错误发生的错误(如果有)。