2016-09-18 3 views
0

내가Google 드라이브 API - 파일 부모 목록 항상 전무

let searchQuery = GTLQueryDrive.queryForFilesList() 

으로 Google 드라이브 API를 사용하여 파일을 검색 및 완료

for file in response.files as! [GTLDriveFile] { 
    print("Parents for \(file.name!): \(file.parents)") 
} 

부모 목록에 각 파일에 대해 부모를 인쇄 파일이 몇 개의 폴더에 있더라도 항상 nil입니다. 왜 이런 경우입니까?

func searchForAllFilesAndParents(){ 

    let searchQuery = GTLQueryDrive.queryForFilesList() 

    searchQuery?.q = "trashed = false" 

    service.executeQuery(searchQuery!, completionHandler: { (ticket: GTLServiceTicket?, response: Any, error: Error?) in 

     if let error = error { 
      print("Error while searching for all files: \(error.localizedDescription)") 
      return 
     } 

     if let filesList = response as? GTLDriveFileList, let files = filesList.files, !files.isEmpty { 

      print("\(files.count) files found)") 

      for file in files as! [GTLDriveFile] { 
       print("Parents for \(file.name!): \(file.parents)") 
      } 

     } else { 
      print("No files were found") 
     } 
    }) 
} 

답변

2

내가 그것을 알아 냈 :

는 여기에 내가이 문제를 보여주기 위해 사용하고 완전한 기능의 당신이 필드 문자열을 설정해야하므로 포함, 기본적으로 부모의 목록을 반환하지 않습니다 요청 필요한 분야. 예를 들어 추가 할 파일의 이름, ID 및 상위가 필요한 경우 :

searchQuery?.fields = "files(id,name,parents)" 

중요 : 그것은 items(...)이었다 전에 반면 files(...)에서, V3 API의 새로운 구문입니다 것을 알 수 있습니다.

관련 문제