我正在处理从谷歌驱动器下载文件。但是我在使用谷歌 SDK 时遇到了很多问题。在 developer.google.com 中有一些可用的示例。
GTLServiceDrive *drive = ...;
GTLDriveFile *file = ...;
GTMHTTPFetcher *fetcher = [drive.fetcherService fetcherWithURLString:file.downloadUrl];`
`[fetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) {
if (error == nil) {
NSLog(@"Retrieved file content");
// Do something with data
} else {
NSLog(@"An error occurred: %@", error);
}
}];
我已经从 developer.google.com
网站下载了新的 sdk,但在上面的示例中给出了 GTMHTTPFetcher *fetcher = [drive.fetcherService fetcherWithURLString:file.downloadUrl];
.但是在新的SDK中,在这个GTLDriveFile
中没有downloadURL
对象。
在另一个示例中,它要求提供客户端 key ,但是当我选择 iOS 类型时,没有客户端 key 选项。但是当我选择网络时它正在显示。但它不起作用。
请帮助我如何使用 objective-c 从 iOS 中的谷歌驱动器下载文件。
最佳答案
这可能会帮助您需要在 URL 中添加 key (iOS 的 API key )参数
GTLDriveFile *myfile;//Your File Object
NSString *url = [NSString stringWithFormat:@"https://www.googleapis.com/drive/v3/files/%@?key=YOUR_KEY_iOS",
myfile.identifier];
GTMSessionFetcher *fetcher = [self.service.fetcherService fetcherWithURLString:url]; //GTLServiceDrive *service;
[fetcher beginFetchWithCompletionHandler:^(NSData *data, NSError *error) {
if (error == nil) {
NSLog(@"Retrieved file content");
// File Downloaded!
} else {
NSLog(@"An error occurred: %@", error);
}
}];
关于ios - 如何使用 objective c 从 google drive 下载文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35546379/