2015-02-06 2 views
0

После нескольких недель борьбы с документацией и большим количеством форумов я узнал, как использовать как клиентскую библиотеку Drive API для Java, так и API Google Таблиц. Я чувствую, что документации, особенно для android, очень не хватает, поэтому я подумал, что было бы полезно сделать сообщение, объясняющее, как импортировать API для Android. Это сообщение, которое я хотел бы найти, когда я начал с этих двух библиотек, я надеюсь, что это поможет кому-то, кто мог бы столкнуться с моими проблемами.Как импортировать клиентскую библиотеку API-интерфейсов API для Java и Google Таблиц API версии 3.0

+0

Вот ссылка на клиентскую библиотеку Drive API для Java: https://developers.google.com/api-client-library/java/apis/drive/v2 и API Google Таблиц: https://code.google.com/p/gdata-java-client/ – gui47

+0

«Это сообщение, которое я бы мог найти» <- Где я могу найти этот пост? – Nurpax

+0

@Nurpax Так извините за неполное сообщение, я думал, что разместил ответ ниже. –

ответ

2

Примечание: это только для Android и предназначено для Android Studio , Конфигурация, описанная ниже, - это то, что я использую, хотя могут быть некоторые ненужные файлы, включенные, тем не менее, они работают.
Итак, во-первых, функциональность, которая импортирует эти два APIS, даст доступ к пользователям Google Диска и для редактирования электронных таблиц Google в этой учетной записи. Существуют две «версии» API Drive для Android, одна специально для Android и другая для любой среды Java. Хотя тот, который специально создан для Android, проще в использовании и лучше интегрирован с Android, он имеет один главный недостаток.
Note: The Google Drive Android API currently only supports drive.file and drive.appfolder authorization scopes. If your application requires additional permissions or features not yet available in the Drive Android API, you must use the Google APIs Java Client.
Это означает, что ваше приложение может получить доступ и редактировать только созданные им файлы, поэтому я выбрал использование Java-клиента API Google. Что касается Google Sheets API, то реальных альтернативных версий нет.
Теперь самое сложное время, когда я пытался выяснить, какие файлы мне нужно импортировать, документация по этому вопросу туманна, поэтому вот необходимые файлы.
Поместите все эти файлы в каталог app\libs вашего приложения.
Использовать клиентскую библиотеку API-диска для Java
Сначала «Download the Drive API v2 Client Library for Java.» В статье readme.html описано, какие зависимости необходимы для Android.
Используйте следующие банки.

`google-api-client-android-1.19.1.jar (for SDK >= 2.1) 
google-http-client-android-1.19.0.jar 
gson-2.1.jar 
protobuf-java-2.4.1.jar` 


включают также google-api-services-drive-v2-rev161-1.19.1.jar

Чтобы использовать версию Google Sheets API 3,0
Скачать GData библиотека из here, это включает в себя spreadhseet банки и другие библиотеки GData, как карты, финансы, документы, календарь и т.д. ..
В gdata \ java \ lib используйте следующие файлы.

` 

    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.19.1.jar 
    google-api-client-android-1.19.1.jar 
    google-api-services-drive-v2-rev158-1.19.1.jar 
    google-http-client-1.19.0.jar 
    google-http-client-android-1.19.0.jar 
    google-http-client-gson-1.19.0.jar 
    google-oauth-client-1.19.0.jar 
    guava-18.0.jar 
    jackson-core-2.1.3.jar 
    jackson-core-asl-1.9.11.jar 
    jsr305.jar 
    protobuf-java-2.4.1.jar 
    gdata-base-1.0.jar 
    gdata-client-1.0.jar 

` 


Скачать javamail, это сделано специально для android`

mail.jar 
activation.jar 
activation.jar` 



Теперь, когда у вас есть все это в приложении \ Lib каталога ваш build.gradle должен включать в себя следующие элементы (добавить это в себе): `

compile files('libs/activation.jar') 
compile files('libs/additionnal.jar') 
compile files('libs/gdata-base-1.0.jar') 
compile files('libs/gdata-client-1.0.jar') 
compile files('libs/gdata-client-meta-1.0.jar') 
compile files('libs/gdata-core-1.0.jar') 
compile files('libs/gdata-spreadsheet-3.0.jar') 
compile files('libs/gdata-spreadsheet-meta-3.0.jar') 
compile files('libs/google-api-client-1.19.1.jar') 
compile files('libs/google-api-client-android-1.19.1.jar') 
compile files('libs/google-api-services-drive-v2-rev158-1.19.1.jar') 
compile files('libs/google-http-client-1.19.0.jar') 
compile files('libs/google-http-client-android-1.19.0.jar') 
compile files('libs/google-http-client-gson-1.19.0.jar') 
compile files('libs/google-oauth-client-1.19.0.jar') 
compile files('libs/gson-2.1.jar') 
compile files('libs/guava-18.0.jar') 
compile files('libs/jackson-core-2.1.3.jar') 
compile files('libs/jackson-core-asl-1.9.11.jar') 
compile files('libs/jsr305.jar') 
compile files('libs/mail.jar') 
compile files('libs/protobuf-java-2.4.1.jar')` 


Заключительный шаг!
Из-за большого количества методов, которые эти импортированные банки нам нужно сделать, чтобы наше приложение было многомерным, этот процесс очень прост и описан here. После этого вы все настроите, чтобы начать использовать диск и API таблиц, если вы нашли это полезное голосование, чтобы другие могли видеть!

+0

Речь идет о том, какие библиотеки вы импортируете в свой проект, но на самом деле это не объясняет, как они подключены. Например, вы можете сделать электронную таблицу локальной для вашего устройства и получить доступ к ней без сетевого подключения. Можете ли вы выполнить это с помощью вышеупомянутых API? Было бы неплохо иметь возможность редактировать локальные электронные таблицы и иметь собственную функциональность Диска для Android, которая будет заботиться о синхронизации облаков. – Nurpax

+0

Как вы заявили, это сообщение о том, какие банки импортировать, я никогда не хотел, чтобы это было сообщение о том, как использовать соответствующие API или исчерпывающе перечислить их функциональность. Если вы хотите узнать больше об API, я чувствую, что доступна вся необходимая документация, они связаны в моем ответе. –

+0

Странно, когда я посетил ссылку библиотеки gdata, которую вы упомянули для Sheets API v3, я нашел старые версии jars (например, gdata-spreadsheet-1.0.jar вместо gdata-spreadsheet-3.0.jar). Такая же ссылка предоставляется в документации по официальным документам. Это вызвало много «ошибок, которые не нашли ошибки» :(И я не мог найти причину, пока не наткнулся на это сообщение. Другие, пожалуйста, убедитесь, что вы используете последние версии банок! – akshay7692

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