将文件插入appdata文件夹

时间:2013-06-21 05:44:05

标签: objective-c google-drive-api

我正在开发Mac应用程序,并希望将文件存储在Google驱动器中。文件应该对用户隐藏。所以我选择保存在“appdata”文件夹中。使用Drive sample code上传文件。要使用此sample code将文件插入“appdata”文件夹中。但是当我插入文件时,用户可以看到它。它没有被隐藏。

  1. 所以请告诉我将文件上传到“appdata”私人文件夹所需的更改Drive sample code。 ?
  2. 我需要吗? 第一次创建“appdata”文件夹?

1 个答案:

答案 0 :(得分:1)

Drive Sample成功上传文件到app数据文件夹进行以下更改后:

  1. 修改后的API范围,选择“https://www.googleapis.com/auth/drive.appdata”:
  2. GTMOAuth2WindowController *windowController = [GTMOAuth2WindowController controllerWithScope:@"https://www.googleapis.com/auth/drive.appdata" clientID:clientID clientSecret:clientSecret keychainItemName:kKeychainItemName resourceBundle:frameworkBundle];

    2.获取父文件引用。这里'appdata'文件夹是父文件夹:

    GTLQuery *query = [GTLQueryDrive queryForFilesGetWithFileId:@"appdata"];
            [service executeQuery:query
                completionHandler:^(GTLServiceTicket *ticket, GTLDriveFile *parentfile,
                                    NSError *error) {
                    /*Save parentfile for future reference*/}];
    

    3.将设置文件父级上传到app数据文件夹。使用上一步中隐藏的父文件引用

    GTLDriveParentReference *parentRef = [GTLDriveParentReference object];
            parentRef.identifier = parentfile.identifier;
            fileToUpload.labels.hidden = @YES;
            fileToUpload.parents = [NSArray arrayWithObjects: parentRef, nil];
    
相关问题