0

아래 링크에서 제공되는 Google 드라이브 레스트 APi의 경우 Android Quickstart으로 작업하고 있습니다. Android QuickstartGoogle 드라이브 REST API : file.getCreatedTime()은 항상 null을 반환합니다.

예제 코드는 그대로 정상적으로 작동합니다. 그러나 getCreatedTime() 또는 GetWevViewLink()과 같은 파일에서 다른 세부 정보를 얻으려고하면 'null'이 반환됩니다. getName() 및 getId() 만 값을 반환합니다.

+0

약 getCreatedDate()? 참고 나는 안드로이드의 힘이 없다고 생각하고있다. file.get은 약간의 파일 리소스를 반환합니다. https://developers.google.com/drive/v2/reference/files – DaImTo

+0

Nope. 그건 작동하지 않습니다. 나는 V3 버전의 API를 사용하고 있습니다. –

답변

0

Working with File and Folder Metadata에 표시된대로 getCreatedDate을 사용하려면 Metadata 클래스를 사용해야한다고 생각합니다. 단지 특정 기본 필드를 반환

ResultCallback<MetadataResult> metadataRetrievedCallback = new 
      ResultCallback<MetadataResult>() { 
     @Override 
     public void onResult(MetadataResult result) { 
      if (!result.getStatus().isSuccess()) { 
       showMessage("Problem while trying to fetch metadata"); 
       return; 
      } 
      //show the date when file was created 
      Metadata metadata = result.getMetadata(); 
      showMessage("File was created on " + metadata.getCreatedDate()); 

     } 
    } 
1

Google 드라이브 REST API를 v3의 :

그런 식으로 뭔가를하려고합니다. 일부 필드가 필요하면 명시 적으로 필드를 .setFields() 메소드로 설정하여 요청해야합니다.

은 다음과 같이 코드를 수정 -

주목할만한 변화

    을 -

    private List<String> getDataFromApi() throws IOException { 
        // Get a list of up to 10 files. 
        List<String> fileInfo = new ArrayList<String>(); 
        FileList result = mService.files().list() 
         .setPageSize(10) 
    
         // see createdTime added to list of requested fields 
         .setFields("nextPageToken, files(createdTime,id,name)")     
    
         .execute(); 
        List<File> files = result.getFiles(); 
        if (files != null) { 
         for (File file : files) { 
          fileInfo.add(String.format("%s (%s)\n", 
            file.getName(), file.getId())); 
         } 
        } 
        return fileInfo; 
    } 
    

    당신은 위의 링크에서 인용 여기이 동작 https://developers.google.com/drive/v3/web/migration

    에 대한 자세한 읽을 수 있습니다

  • 전체 리소스는 더 이상 기본적으로 반환되지 않습니다. fields 쿼리 매개 변수를 사용하여 반환 할 특정 필드를 요청하십시오. 지정하지 않으면 일반적으로 사용되는 필드의 서브 세트 만 리턴됩니다.

이 문제에 직면 한 다른 사람들에게도 도움이 될 수 있도록 답을 수락하십시오.