概览
Places SDK 的主接口。
用于搜索和获取地点的详细信息。此类应通过 [GMSPlacesClient sharedClient] 方法访问。
GMSPlacesClient方法只能从主线程调用。从其他线程调用这些方法将导致异常或未定义的行为。除非另有说明,否则所有回调都将在主线程上调用。
公开成员函数 | |
(void) | - lookUpPlaceID:callback: |
获取地点的详细信息。 | |
(void) | - lookUpPhotosForPlaceID:callback: |
获取最多与一个地点关联的 10 张照片的元数据。 | |
(void) | - loadPlacePhoto:callback: |
以最大尺寸加载特定照片的图片。 | |
(void) | - loadPlacePhoto:constraintToSize: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 的共享实例(必要时创建)。 | |
(布尔值) | + 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 result, NSError *_Nullable error) |
用于接收地点详情查询的回调类型。 | |
typedef void(^ | GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_NullablelikeliList、NSError *_Nullable error) |
用于接收地点可能性列表的回调类型。 | |
typedef void(^ | GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable 可能性, NSError *_Nullable error) |
用于接收 GMSPlaceLikelihood 数组的回调类型。 | |
typedef void(^ | GMSAutocompletePredictionsCallback )(NSArray< GMSAutocompletePrediction * > *_Nullable results, NSError *_Nullable error) |
用于接收自动补全结果的回调类型。 | |
typedef void(^ | GMSPlacePhotoMetadataResultCallback )(GMSPlacePhotoMetadataList *_Nullable 照片、NSError *_Nullable 错误) |
用于接收地点照片结果的回调类型。 | |
typedef void(^ | GMSPlacePhotoImageResultCallback)(UIImage *_Nullable photo、NSError *_Nullable error) |
用于从 GMSPlacePhotoMetadata 对象接收 UIImage 对象的回调类型。 | |
typedef void(^ | GMSPlaceOpenStatusCallback )(GMSPlaceOpenStatus 结果,NSError *_Nullable error) |
用于接收“地点”营业时间状态的回调类型。 |
成员函数文档
+(实例类型)sharedClient |
为 Google Places SDK for iOS 提供 GMSPlacesClient 的共享实例(必要时创建)。
如果您的应用通常使用 GMSPlacesClient 的方法,则可能需要直接保留此对象,否则系统可能会定期重新开始与 Google 的连接。
+ (BOOL) provideAPIKey: | (NSString *) | key |
向 Google Places SDK for iOS 提供您的 API 密钥。
此密钥通过 Google Cloud Platform 控制台为您的应用生成,并与应用的软件包 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) findUpPlaceID: | (NSString *) | 地点 ID | |
回调: | (GMSPlaceResultCallback) | 回调函数 | |
获取地点的详细信息。
此方法不会阻塞。
- 参数:
-
地点 ID 要查询的地点 ID。 callback 使用查询结果调用的回调。
- (void) findUpPhotosForPlaceID: | (NSString *) | 地点 ID | |
回调: | (GMSPlacePhotoMetadataResultCallback) | 回调函数 | |
获取最多与一个地点关联的 10 张照片的元数据。
照片来源于各种地点,包括企业主和 Google+ 用户贡献的照片。在大多数情况下,使用这些照片时可以不包含提供方说明,或者可以在图片中显示必要的提供方说明。不过,您必须在响应中使用 attributions
属性来检索所需的任何其他提供方信息,并在显示图片的任意位置显示这些提供方信息。最多可返回 10 张照片。
多次调用该方法可能会每次都返回相同的照片。不过,我们无法保证一定会这样做,因为底层数据可能已发生变化。
此方法可执行网络查询。
- 参数:
-
地点 ID 要为其查找照片的地点 ID。 callback 使用查询结果调用的回调。
- (void) loadPlacePhoto: | (GMSPlacePhotoMetadata *) | photoMetadata | |
回调: | (GMSPlacePhotoImageResultCallback) | 回调函数 | |
以最大尺寸加载特定照片的图片。
SDK 可能会缓存图片数据。如果所请求的照片不在缓存中,则会执行网络查找。
- 参数:
-
photoMetadata 要为其加载 UIImage
的GMSPlacePhotoMetadata
。callback 使用加载的 UIImage
调用的回调。
- (void) loadPlacePhoto: | (GMSPlacePhotoMetadata *) | photoMetadata | |
constraintToSize: | (CGSize) | maxSize | |
: | (CGFloat) | 缩放 | |
回调: | (GMSPlacePhotoImageResultCallback) | 回调函数 | |
加载特定照片的图片,将其缩放以适合给定的最大尺寸。
图片会进行缩放以适合给定的尺寸,同时保持原始图片的宽高比。这种扩缩在服务器端执行。
如果 Scale 参数不是 1.0,则将 maxSize 乘以此值,返回的 UIImage
将设为指定的比例。如果您要加载的是要在屏幕上显示的图片,则应将此参数设为屏幕尺寸。
SDK 可能会缓存图片数据。如果所请求的照片不在缓存中,则会执行网络查找。
- 注意:
- 采用缩放比例后,maxSize 中的尺寸将在使用前四舍五入为最接近的整数。如果请求的图片大于最大大小,则可能会返回较小的图片。
- 参数:
-
photoMetadata 要为其加载 UIImage
的GMSPlacePhotoMetadata
。最大尺寸 图片的大小上限。 和 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 *) | 地点 ID | |
placeFields: | (GMSPlaceField) | placeFields | |
sessionToken: | (可为 null 的 GMSAutocompleteSessionToken *) | sessionToken | |
回调: | (GMSPlaceResultCallback) | 回调函数 | |
获取地点的详细信息。
此方法不会阻塞。
- 参数:
-
地点 ID 要查询的地点 ID。 placeField 为列表中的地点对象请求的各个地点字段。 sessionToken 将请求与结算会话相关联的 GMSAutocompleteSessionToken
。callback 使用查询结果调用的回调。
- (void) findPlaceLikelihoodsFromCurrentLocationWithPlaceFields: | (GMSPlaceField) | placeFields | |
回调: | (GMSPlaceLikelihoodsCallback) | 回调函数 | |
使用用户当前的位置信息查找地点可能性。
此方法不会阻塞。
系统将使用所提供的地点数组调用所提供的回调函数,成功时会调用可能性得分,出错时返回 NSError。
- 参数:
-
placeField 为列表中的地点对象请求的各个地点字段。 callback 使用地点可能性调用的回调。
-(空)isOpenWithPlaceID: | (NSString *) | 地点 ID | |
回调: | (GMSPlaceOpenStatusCallback) | 回调函数 | |
获取地点的详细信息,包括当前确定 GMSPlaceOpenStatus
所需的所有字段。
此方法不会阻塞。
- 参数:
-
地点 ID 要查询的地点 ID。 callback 使用地点结果调用的回调函数。
-(空)isOpenWithPlaceID: | (NSString *) | 地点 ID | |
日期: | (NSDate *) | 日期 | |
回调: | (GMSPlaceOpenStatusCallback) | 回调函数 | |
获取地点的详细信息,包括确定指定 NSDate
处的 GMSPlaceOpenStatus
所需的所有字段。
此方法不会阻塞。
- 参数:
-
地点 ID 要查询的地点 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.
Friends 和 Related Function 文档
- (typedef void(^ GMSPlaceResultCallback)(GMSPlace *_Nullable result, NSError *_Nullable error)) [related] |
- (typedef void(^ GMSPlaceLikelihoodListCallback)(GMSPlaceLikelihoodList *_NullablelikelihoodList, NSError *_Nullable error) [related] |
用于接收地点可能性列表的回调类型。
如果出现错误,likelihoodList
将为 nil,而 error
将包含错误相关信息。
- 参数:
-
可能性列表 地点可能性列表。 error 发生的错误(如果有)。
- (typedef void(^ GMSPlaceLikelihoodsCallback)(NSArray< GMSPlaceLikelihood * > *_Nullable moreability, NSError *_Nullable error) [related] |
用于接收 GMSPlaceLikelihood
数组的回调类型。
如果出现错误,该数组将为空,并且 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 result, NSError *_Nullable error)) [related] |
用于接收“地点”营业时间状态的回调类型。
如果出现错误,result
将为 GMSPlaceOpenStatusUnknown,并且 error
将包含错误相关信息。
- 参数:
-
结果 返回的 GMSPlaceOpenStatus
。error 发生的错误(如果有)。