Подтвердить что ты не робот

Android - Google Spreadsheet Api

Я не могу получить, какие библиотеки я должен использовать для разработки приложения Android, которое управляет таблицей Google. Мне нужно соединять, копировать, редактировать, читать из электронной таблицы пользователя, но сегодня я не понимаю, как это сделать.

Google Drive Api : https://developers.google.com/drive/
Google Spreadsheet Api: https://developers.google.com/google-apps/spreadsheets/
Google APi java client: http://code.google.com/p/google-api-java-client/

Какой правильный?

4b9b3361

Ответ 1

В конце библиотеки я использовал:

gdata-client-1.0.jar
gdata-client-meta-1.0.jar
gdata-core-1.0.jar
gdata-spreadsheet-3.0.jar
gdata-spreadsheet-meta-3.0.jar
google-api-client-1.12.0-beta.jar
google-api-client-android-1.12.0-beta.jar
google-http-client-1.12.0-beta.jar
google-http-client-android-1.12.0-beta.jar
google-oauth-client-1.12.0-beta.jar
gson-2.1.jar
guava-13.0.1.jar
jackson-core-asl-1.9.9.jar
jsr305-1.3.9.jar
protobuf-java-2.4.1.jar

Как было предложено Eugenio (спасибо за это!!!), я "смешанные" библиотеки из таблицы api с java-client-api, и после проверки подлинности я использовал следующее для получения ячеек

SpreadsheetEntry spreadsheet = null;
URL metafeedUrl = new URL("https://spreadsheets.google.com/feeds/spreadsheets/private/full");

SpreadsheetFeed spreadsheetFeed = service.getFeed(metafeedUrl, SpreadsheetFeed.class);
List<SpreadsheetEntry> spreadsheets = spreadsheetFeed.getEntries();
for (SpreadsheetEntry entry : spreadsheets) {
   if (entry.getTitle().getPlainText().equals(spreadsheetTitle)) {
      spreadsheet = entry;
   }
}

if (spreadsheet == null) {
    throw new FileNotFoundException("Cannot find the required spreadsheet '" + spreadsheetTitle + "'");
}

WorksheetEntry worksheet = null;
WorksheetFeed worksheetFeed = service.getFeed(spreadsheet.getWorksheetFeedUrl(), WorksheetFeed.class);
List<WorksheetEntry> worksheets = worksheetFeed.getEntries();
    for (WorksheetEntry entry : worksheets) {
    if (entry.getTitle().getPlainText().equals(worksheetTitle)) {
         worksheet = entry;
    }
}

if (worksheet == null) {
    throw new FileNotFoundException("Cannot find the required worksheet '" + worksheetTitle + "'");
}

URL listFeedUrl = worksheet.getListFeedUrl();
ListFeed listFeed = service.getFeed(listFeedUrl, ListFeed.class);

На данный момент я использовал "худшую" систему аутентификации, и я должен включить ее в OAuth2, но на данный момент ClientLogin выполняется следующим образом:

SpreadsheetService service = new SpreadsheetService("v1");
service.setProtocolVersion(SpreadsheetService.Versions.V3);
service.setUserCredentials(email, password);

Ответ 2

Краткий ответ: все три

Длинный ответ:

Вам нужно будет использовать новый Drive API, который позволяет загружать, загружать и изменять файлы на Google Диске. При этом у вас есть только ограниченная работа с электронными таблицами, в основном загружайте его или загружайте.

Google Spreadsheet Api позволяет выполнять сложные операции в электронных таблицах, например, получать доступ к данным по строке и столбцу.

Google API java-клиент является зависимой во всех API Google, он используется для авторизации соединения по-разному, например, OAuth или учетных записей служб.