Описание тега google-api-java-client

Клиентская библиотека API Google для Java - это гибкая, эффективная и мощная клиентская библиотека Java для доступа к любому API на основе HTTP в сети, а не только к API Google.

Клиентская библиотека Google API для Java

Обзор

Клиентская библиотека API Google для Java - это гибкая, эффективная и мощная клиентская библиотека Java для доступа к любому API на основе HTTP в сети, а не только к API Google.

Библиотека имеет следующие особенности:

Доступ к API Google

Чтобы использовать клиентские библиотеки Google Java для вызова любого Google API, вам понадобятся две библиотеки:

  • Базовая клиентская библиотека API Google для Java (google-api-java-client), которая представляет собой общую библиотеку времени выполнения, описанную здесь. Эта библиотека предоставляет функциональные возможности, общие для всех API, например, HTTP-транспорт, обработку ошибок, аутентификацию, синтаксический анализ JSON, загрузку / выгрузку мультимедиа и пакетную обработку.
  • Автоматически сгенерированная библиотека Java для API, к которому вы обращаетесь, например, сгенерированная библиотека Java для API BigQuery. Эти сгенерированные библиотеки включают специфичную для API информацию, такую ​​как корневой URL-адрес, и классы, представляющие сущности в контексте API. Эти классы полезны для преобразования между объектами JSON и объектами Java.

Чтобы найти сгенерированную библиотеку для Google API, посетите клиентскую библиотеку Google API для Java. Пакеты Java для конкретных API включают как основной клиент google-api-java-client, так и библиотеки для конкретных клиентов.

Если вы используете старую библиотеку GData, вам необходимо выполнить миграцию.

Разработка под Android

Если вы разрабатываете для Android, и API Google, который вы хотите использовать, включен в библиотеку сервисов Google Play, вам следует использовать эту библиотеку для обеспечения максимальной производительности и удобства.

Чтобы получить доступ к другим API Google, вы можете использовать клиентскую библиотеку API Google для Java, которая поддерживает Android 1.5 (или выше).

Другие среды Java

В дополнение к Android 1.5 или выше, клиентская библиотека API Google для Java поддерживает следующие среды Java: - Java 5 (или выше), стандартная (SE) и корпоративная (EE) - Google App Engine

Не поддерживаются: Google Web Toolkit (GWT), Java Mobile (ME) и Java 1.4 (или более ранние версии).

Выделенные особенности

  • Библиотека упрощает вызов API Google.

    Вы можете вызывать API Google с помощью сгенерированных библиотек для конкретных служб Google с помощью клиентской библиотеки API Google для Java. Вот пример вызова API Календаря Google:

    java // Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);

  • Библиотека упрощает аутентификацию.

    Библиотека аутентификации может уменьшить количество кода, необходимого для обработки OAuth 2.0, и иногда всего несколько строк - это все, что вам нужно. Например:

    java /** Authorizes the installed application to access user's protected data. */ private static Credential authorize() throws Exception { // load client secrets GoogleClientSecrets clientSecrets = GoogleClientSecrets.load(JSON_FACTORY, new InputStreamReader(CalendarSample.class.getResourceAsStream("/client_secrets.json"))); // set up authorization code flow GoogleAuthorizationCodeFlow flow = new GoogleAuthorizationCodeFlow.Builder( httpTransport, JSON_FACTORY, clientSecrets, Collections.singleton(CalendarScopes.CALENDAR)).setDataStoreFactory(dataStoreFactory) .build(); // authorize return new AuthorizationCodeInstalledApp(flow, new LocalServerReceiver()).authorize("user"); }

  • Библиотека упрощает пакетирование и загрузку / скачивание мультимедиа.

    Библиотека предлагает вспомогательные классы для пакетирования, загрузок медиа и средств массовой загрузки.

  • Библиотека работает на Google App Engine.

    Специализированные помощники App Engine быстро выполняют аутентифицированные вызовы API, и вам не нужно беспокоиться об обмене кода на токены. Например:

    java @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { AppIdentityCredential credential = new AppIdentityCredential(Arrays.asList(UrlshortenerScopes.URLSHORTENER)); Urlshortener shortener = new Urlshortener.Builder(new UrlFetchTransport(), new JacksonFactory(), credential) .build(); UrlHistory history = shortener.URL().list().execute(); ... }

  • Библиотека работает на Android (@Beta).

    Если вы разрабатываете для Android, и API Google, который вы хотите использовать, включен в библиотеку сервисов Google Play, вам следует использовать эту библиотеку для обеспечения максимальной производительности и удобства.

    Чтобы получить доступ к другим API Google, вы можете использовать клиентскую библиотеку Google для специальных вспомогательных классов Java для Android, которые хорошо интегрированы с Android AccountManager. Например:

    java @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); // Google Accounts credential = GoogleAccountCredential.usingOAuth2(this, Collections.singleton(TasksScopes.TASKS)); SharedPreferences settings = getPreferences(Context.MODE_PRIVATE); credential.setSelectedAccountName(settings.getString(PREF_ACCOUNT_NAME, null)); // Tasks client service = new com.google.api.services.tasks.Tasks.Builder(httpTransport, jsonFactory, credential) .setApplicationName("Google-TasksAndroidSample/1.0").build(); }

  • Библиотека проста в установке.

    Клиентскую библиотеку API Google для Java легко установить, и вы можете загрузить двоичный файл прямо со страницы загрузок или использовать Maven или Gradle. Чтобы использовать Maven, добавьте в файл pom.xml следующие строки:

    maven <project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.20.0</version> </dependency> </dependencies> </project>

    Чтобы использовать Gradle, добавьте в файл build.gradle следующие строки:

    gradle repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.20.0' }

Зависимости

Эта библиотека построена на основе двух общих библиотек, также созданных Google, и также предназначена для работы с любыми HTTP-сервисами в Интернете: * Клиентская библиотека Google HTTP для Java * Клиентская библиотека Google OAuth для Java

Важные предупреждения

@Бета

Возможности, отмеченные аннотацией @Beta на уровне класса или метода, могут быть изменены. Они могут быть изменены любым способом или даже удалены в любом основном выпуске. Вы не должны использовать бета-функции, если ваш код сам является библиотекой (то есть, если ваш код используется в CLASSPATH пользователей, находящихся вне вашего контроля).

Устаревание

Устаревшие не-бета-функции будут удалены через восемнадцать месяцев после выпуска, в котором они впервые объявлены устаревшими. Вы должны исправить свои обычаи до этого времени. Если вы этого не сделаете, это может привести к поломке любого типа, и вам не гарантируется ошибка компиляции.

Документация

Ссылки