ios – 如何使用目标c从谷歌驱动器下载文件?

我正在使用谷歌驱动器下载文件.但是我使用谷歌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网站下载了新的sdks,但在上面的示例中给出了GTMHTTPFetcher * fetcher = [drive.fetcherService fetcherWithURLString:file.downloadUrl];.但在新的SDK中,在这个GTLDriveFile中没有downloadURL对象.

在另一个例子中,它要求客户端密钥,但是当我选择iOS类型时,则没有客户端密钥的选项.但是,当我选择网络时,它正在显示.但它不起作用.

请帮我如何使用目标c从iOS中的谷歌驱动器下载文件.

最佳答案 这可能会帮助您在URL中添加密钥(iOS的API密钥)参数

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);
        }
    }];
点赞