我似乎无法从PlacePhotoMetadata
对象获取网址。调试器显示有一个URL但我似乎无法访问它。
你如何访问对象中的URL?
val placeId = "ChIJa147K9HX3IAR-lwiGIQv9i4"
val photoMetadataResponse = mGeoDataClient.getPlacePhotos(placeId)
photoMetadataResponse.addOnCompleteListener { task ->
// Get the list of photos
val photos = task.result
// Get the PlacePhotoMetadataBuffer (metadata for all of the photos)
val photoMetadataBuffer = photos.photoMetadata
// Get the first photo in the list
for (photo in photoMetadataBuffer) {
// Get the attribution text
val attribution = photo.attributions
}
}
答案 0 :(得分:0)
你做不到。请查看PlacePhotoMetadata
的文档。有一些方法可以下载图像的位图,但没有方法可以返回URL。
要拍照,你应该这样做:
// this is your for-loop:
photoMetadataBuffer.forEach { photo ->
photo.getPhoto(client).setResultCallback({ result ->
// do whatever you want here:
showPhotoWithAttribution(photo.attributions, result.getBitmap())
})
}
请注意,使用for
调用替换forEach
- 循环没有任何实际优势,它只会让您的代码看起来更清晰。