Dropbox API Support & Feedback
Find help with the Dropbox API from other developers.
Hi,
I I call listInfo with includeMediaInfo parameter. How can I extract the media_info as per the reference document:
includeMediaInfo |
If true, :field:‘FileMetadata.media_info’ is set for photo and video. |
Code extract:
client.files.listFolder(path: path, recursive: false, includeMediaInfo: true, includeDeleted: false).response { response, error in
if let result = response {
for entry in result.entries {
....
}
}
You could do something like this:
client.files.listFolder(path: ", recursive: false, includeMediaInfo: true, includeDeleted: false).response { response, error in
if let result = response {
for entry in result.entries {
print(entry.name)
if let fileEntry = entry as? Files.FileMetadata {
if ((fileEntry.mediaInfo) != nil) {
switch fileEntry.mediaInfo! as Files.MediaInfo {
case .Pending:
print("Media info is pending...")
case .Metadata(let mediaMetadata):
print("dimensions: \(mediaMetadata.dimensions)")
print("location: \(mediaMetadata.location)")
print("timeTaken: \(mediaMetadata.timeTaken)")
}
}
}
}
} else if let callError = error {
print(callError)
}
}
Apologies for the poor formatting.
Thanks Gregory. This works great. Does includeMediaInfo have any negative impact on the performance of listing files?
I don't believe there should be any performance impact. The media information is prepared separately, and if it isn't ready, you'll just get the .Pending case.
Hi there!
If you need more help you can view your support options (expected response time for a ticket is 24 hours), or contact us on X or Facebook.
For more info on available support options for your Dropbox plan, see this article.
If you found the answer to your question in this Community thread, please 'like' the post to say thanks and to let us know it was useful!