2

Я попытался получить доступ к своим данным на Google Диске через Google Drive Android API (а не веб-API). Что сумасшедшее, когда я использую этот доступ, я могу получить доступ только к небольшой части диска (только одна папка и несколько файлов). Я попытался использовать пример кода, и все равно результат такой же. Любая идея, что может быть неправильным?Авторизация API Android для Google Диска

Authorizing

@Override 
public void onCreate(Bundle savedInstanceState) { 
super.onCreate(savedInstance); 

mGoogleApiClient = new GoogleApiClient.Builder(this) 
     .addApi(Drive.API) 
     .addScope(Drive.SCOPE_FILE) 
     .addConnectionCallbacks(this) 
     .addOnConnectionFailedListener(this) 
     .build(); 
} 

@Override 
protected void onStart() { 
super.onStart(); 
mGoogleApiClient.connect(); 
} 

Reading content

@Override 
public void onConnected(Bundle connectionHint) { 
    super.onConnected(connectionHint); 
    Query query = new Query.Builder() 
      .addFilter(Filters.or(
        Filters.eq(SearchableField.MIME_TYPE, "text/html"), 
        Filters.eq(SearchableField.MIME_TYPE, "text/plain"))) 
      .build(); 
    Drive.DriveApi.query(getGoogleApiClient(), query).setResultCallback(metadataCallback); 
} 

    ResultCallback<MetadataBufferResult> childrenRetrievedCallback = new 
     ResultCallback<MetadataBufferResult>() { 
    @Override 
    public void onResult(MetadataBufferResult result) { 
     if (!result.getStatus().isSuccess()) { 
      showMessage("Problem while retrieving files"); 
      return; 
     } 
     mResultsAdapter.clear(); 
     mResultsAdapter.append(result.getMetadataBuffer()); 
     showMessage("Successfully listed files."); 
    } 
}; 

ответ

3

Как API документации:

Примечание: Google Drive Android API в настоящее время поддерживает только drive.file и drive.appfolder областей авторизации. Если вашему приложению требуются дополнительные разрешения или функции, недоступные в API Android для Android, вы должны использовать Java API Java API.

Я думаю, вам нужно разрешение drive, но это не готово для Android API.

+0

Спасибо, я этого не заметил. Это делает этот API практически бесполезным: ( – Michal

+0

Имеет ли статус этого изменения? Использование Java-клиента может быть способом решения этой проблемы, но это боль. – toidiu

Смежные вопросы