概览
Places SDK 的主接口。
用于搜索和获取地点详情。此类应通过 [GMSPlacesClient sharedClient] 方法进行访问。
GMSPlacesClient方法只能从主线程调用。从其他线程调用这些方法将会导致异常或未定义的行为。除非另有说明,否则所有回调都将在主线程上调用。
公开成员函数 | |
(void) | - lookUpPlaceID:callback: |
获取某个地点的详细信息。 | |
(void) | - lookUpPhotosForPlaceID:callback: |
获取与某个地点关联的最多 10 张照片的元数据。 | |
(void) | - loadPlace Photo: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: |
向 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 的完整版本。 | |
相关函数 | |
(请注意,这些并非成员函数。) | |
typedef void(^) | GMSPlaceResultCallback )(GMSPlace *_Nullable 结果, NSError *_Nullable 错误) |
用于接收地点详情查询的回调类型。 | |
typedef void(^) | GMSPlaceLikelihoodListCallback )(GMSPlaceLikelihoodList *_Nullable likelihoodList, NSError *_Nullable 错误) |
用于接收地点可能性列表的回调类型。 | |
typedef void(^) | GMSPlaceLikelihoodsCallback )(NSArray< GMSPlaceLikelihood * > *_Nullable likelihoods, NSError *_Nullable 错误) |
用于接收 GMSPlaceLikelihood 数组的回调类型。 | |
typedef void(^) | GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nullable results, NSError *_Nullable 错误) |
用于接收自动补全结果的回调类型。 | |
typedef void(^) | GMSPlacePhotoMetadataResultCallback )(GMSPlacePhotoMetadataList *_Nullable 照片, NSError *_Nullable 错误) |
用于接收地点照片结果的回调类型。 | |
typedef void(^) | GMSPlacePhotoImageResultCallback )(UIImage *_Nullable photo, NSError *_Nullable error) |
用于从 GMSPlacePhotoMetadata 对象接收 UIImage 对象的回调类型。 | |
typedef void(^) | GMSPlaceOpenStatusCallback )(GMSPlaceOpenStatus 结果,NSError *_Nullable 错误) |
用于接收地点营业时间状态的回调类型。 |
成员函数文档
+(实例类型)sharedClient |
为 Google Places SDK for iOS 提供GMSPlacesClient的共享实例,并在必要时创建该实例。
如果您的应用经常使用GMSPlacesClient的方法,您可能需要直接保留此对象,否则您的应用可能会定期重新启动。
+ (BOOL) provideAPIKey: | (NSString *) | key |
向 Google Places SDK for iOS 提供您的 API 密钥。
此密钥通过 Google Cloud Platform Console 为您的应用生成,并与您应用的软件包 ID 配对,以标识它。在使用GMSPlacesClient之前(例如,在 application: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)”。
- (void)lookUpPlaceID: | (NSString *) | placeID | |
回调: | (GMSPlaceResultCallback) | 回调 | |
获取某个地点的详细信息。
此方法是非阻塞的。
- 参数:
-
placeID 要查询的地点 ID。 callback 要通过查询结果调用的回调函数。
- (void)lookUpPhotosForPlaceID: | (NSString *) | placeID | |
回调: | (GMSPlacePhotoMetadataResultCallback) | 回调 | |
获取与某个地点关联的最多 10 张照片的元数据。
照片来自不同的地点,包括商家所有者和 Google+ 用户贡献的照片。在大多数情况下,使用这些照片时可以不包含提供方说明,或者可以在图片中包含必要的提供方说明。不过,您必须在响应中使用 attributions
属性来检索所需的任何其他提供方说明,并在任何显示图片的位置在应用中显示这些提供方说明。最多返回 10 张照片。
多次调用此方法可能会每次都返回相同的照片。不过,不能保证做到这一点,因为底层数据可能已发生变化。
此方法会执行网络查找。
- 参数:
-
placeID 要为其查找照片的地点 ID。 callback 要通过查询结果调用的回调函数。
- (void) loadPlace Photo: | (GMSPlacePhotoMetadata *) | photoMetadata | |
回调: | (GMSPlacePhotoImageResultCallback) | 回调 | |
以最大尺寸加载特定照片的图片。
SDK 可能会缓存图片数据。如果缓存中不存在请求的照片,则会执行网络查找。
- 参数:
-
photoMetadata 要加载 UIImage
的GMSPlacePhotoMetadata
。callback 要使用已加载的 UIImage
调用的回调。
- (void) loadPlace Photo: | (GMSPlacePhotoMetadata *) | photoMetadata | |
constraintToSize: | (CGSize) | maxSize | |
: | (CGFloat) | 规模 | |
回调: | (GMSPlacePhotoImageResultCallback) | 回调 | |
用于加载特定照片的图片,该图片会进行缩放以适应指定的最大尺寸。
系统将缩放图片以适应指定尺寸,同时保持原始图片的宽高比。这种扩缩在服务器端执行。
如果 scale 参数不是 1.0,则 maxSize 将与此值相乘,并且返回的 UIImage
将设置为具有指定的比例。如果您要加载要在屏幕上显示的图片,则应将此参数设置为屏幕尺寸。
SDK 可能会缓存图片数据。如果缓存中不存在请求的照片,则会执行网络查找。
- 注意:
- 应用缩放比例后,maxSize 中的尺寸将向上舍入为最接近的整数,然后再使用。如果请求的图片大于可用的大小上限,则可能会返回一张较小的图片。
- 参数:
-
photoMetadata 要加载 UIImage
的GMSPlacePhotoMetadata
。maxSize 图片的大小上限。 和 WAF 图片的加载比例。 callback 要使用已加载的 UIImage
调用的回调。
- (void) currentPlaceWithCallback: | (GMSPlaceLikelihoodListCallback) | callback |
返回已知设备当前所在位置的估算值。
根据设备最近的估计位置生成地点可能性列表。如果成功,系统将使用此可能性列表调用所提供的回调函数;如果发生错误,则会调用 NSError。
- 注意:
- 此方法要求您的应用有权访问当前设备位置信息。调用此方法之前,请确保使用 [CLLocationManager requestWhenInUseAuthorization] 或 [CLLocationManager requestAlwaysAuthorization] 请求对用户位置信息的访问权限。如果您调用此方法,但应用没有正确的授权状态,则调用该回调函数时会显示错误。
- 参数:
-
callback 要使用地点可能性列表调用的回调。
- (void) findAutocompletePredictionsFromQuery: | (NSString *) | query | |
过滤条件: | (可为 null 的 GMSAutocompleteFilter *) | filter | |
sessionToken : | (可为 null 的 GMSAutocompleteSessionToken *) | sessionToken | |
回调: | (GMSAutocompletePredictionsCallback) | 回调 | |
根据文本查询查找自动补全预测结果。
结果可选择偏向于特定位置或仅限于某个区域。此方法是非阻塞的。
如果成功,则会使用一组自动填充预测结果调用所提供的回调函数,并在出现错误时通过一个 NSError 来调用。
- 参数:
-
个查询 要自动补全的部分文本。 filter 要应用于结果的过滤条件。此参数可以为 nil。 sessionToken 用于将请求与结算会话关联的 GMSAutocompleteSessionToken
。callback 要对预测调用的回调。
- (void) fetchPlaceFromPlaceID: | (NSString *) | placeID | |
placeField: | (GMSPlaceField) | placeFields | |
sessionToken : | (可为 null 的 GMSAutocompleteSessionToken *) | sessionToken | |
回调: | (GMSPlaceResultCallback) | 回调 | |
提取地点的详细信息。
此方法是非阻塞的。
- 参数:
-
placeID 要查询的地点 ID。 placeFields 为列表中的地点对象请求的各个地点字段。 sessionToken 用于将请求与结算会话关联的 GMSAutocompleteSessionToken
。callback 要通过查询结果调用的回调函数。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: | (GMSPlaceField) | placeFields | |
回调: | (GMSPlaceLikelihoodsCallback) | 回调 | |
使用用户的当前位置查找地点可能性。
此方法是非阻塞的。
所提供的回调函数将在成功时通过地点数组调用可能性得分,并在出现错误时通过 NSError 调用。
- 参数:
-
placeFields 为列表中的地点对象请求的各个地点字段。 callback 要使用地点可能性调用的回调。
- (void) isOpenWithPlaceID: | (NSString *) | placeID | |
回调: | (GMSPlaceOpenStatusCallback) | 回调 | |
获取某个地点的详细信息,包括确定当前 GMSPlaceOpenStatus
所需的所有字段。
此方法是非阻塞的。
- 参数:
-
placeID 要查询的地点 ID。 callback 要通过地点结果调用的回调。
- (void) isOpenWithPlaceID: | (NSString *) | placeID | |
日期: | (NSDate *) | 日期 | |
回调: | (GMSPlaceOpenStatusCallback) | 回调 | |
获取地点的详细信息,包括确定指定 NSDate
处的 GMSPlaceOpenStatus
所需的所有字段。
此方法是非阻塞的。
- 参数:
-
placeID 要查询的地点 ID。 date 要为其确定打开状态的 NSDate
。callback 要通过地点结果调用的回调。
- (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 result, NSError *_Nullable error)) [related] |
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_Nullable likelihoodList, NSError *_Nullable error) [related] |
用于接收地点可能性列表的回调类型。
如果出现错误,likelihoodList
将为 nil,并且 error
将包含有关错误的信息。
- 参数:
-
likelihoodList 地点可能性的列表。 error 发生的错误(如果有)。
- (typedef void(^ GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable likelihoods, NSError *_Nullable error)) [related] |
用于接收 GMSPlaceLikelihood
数组的回调类型。
如果发生错误,数组将为 nil,并且 error
将包含有关错误的信息。
- (typedef void(^ GMSAutocompletePredictionsCallback)(NSArray< GMSAutocompletePrediction * > *_Nullable results, NSError *_Nullable error)) [related] |
用于接收自动补全结果的回调类型。
results
是一个 GMSAutocompletePredictions 数组,表示查询的候选完成情况。
- 参数:
-
结果 GMSAutocompletePrediction
的数组。error 发生的错误(如果有)。
- (typedef void(^ GMSPlacePhotoMetadataResultCallback)(GMSPlacePhotoMetadataList *_Nullable photos, NSError *_Nullable error)) [related] |
用于接收地点照片结果的回调类型。
如果出现错误,photos
将为 nil,并且 error
将包含有关错误的信息。
- 参数:
-
照片 包含 GMSPlacePhotoMetadata
对象的结果。error 发生的错误(如果有)。
- (typedef void(^ GMSPlacePhotoImageResultCallback)(UIImage *_Nullable photo, NSError *_Nullable error)) [related] |
用于从 GMSPlacePhotoMetadata
对象接收 UIImage
对象的回调类型。
如果出现错误,photo
将为 nil,并且 error
将包含有关错误的信息。
- 参数:
-
照片 已加载的 UIImage
。error 发生的错误(如果有)。
- (typedef void(^ GMSPlaceOpenStatusCallback)(GMSPlaceOpenStatus 结果, NSError *_Nullable error)) [related] |
用于接收地点营业时间状态的回调类型。
如果发生错误,result
将为 GMSPlaceOpenStatusUnknown,并且 error
将包含有关该错误的信息。
- 参数:
-
结果 返回的 GMSPlaceOpenStatus
。error 发生的错误(如果有)。