Łatwy dostęp do interfejsów API Google z poziomu Javy

Biblioteka klienta Google API dla języka Java zapewnia funkcje typowe dla wszystkich interfejsów API Google, na przykład transport HTTP, obsługę błędów, uwierzytelnianie, analiza danych JSON, pobieranie i przesyłanie multimediów oraz grupowanie. Biblioteka obejmuje zaawansowaną bibliotekę OAuth 2.0 o spójnym interfejsie, oraz proste, skuteczne modele danych XML i JSON, które obsługują dowolny schemat danych oraz obsługę buforów protokołów.
Aby wywołać interfejs API Google, używając bibliotek klienta Google dla Javy, potrzebujesz wygenerowanej biblioteki Java dla interfejsu API, do którego uzyskujesz dostęp. Te wygenerowane biblioteki zawierają podstawową bibliotekę google-api-java-client oraz informacje związane z interfejsem API, takie jak główny adres URL. Obejmują też klasy reprezentujące encje w kontekście interfejsu API i przydatne do konwersji między obiektami JSON a obiektami Java.
Aby wywołać interfejs API Google, używając bibliotek klienta Google dla Javy, potrzebujesz wygenerowanej biblioteki Java dla interfejsu API, do którego uzyskujesz dostęp. Te wygenerowane biblioteki zawierają podstawową bibliotekę google-api-java-client oraz informacje związane z interfejsem API, takie jak główny adres URL. Obejmują też klasy reprezentujące encje w kontekście interfejsu API i przydatne do konwersji między obiektami JSON a obiektami Java.
Funkcje w wersji beta
Funkcje oznaczone symbolem @Beta na poziomie klasy lub metody mogą ulec zmianie. Mogą one zostać zmodyfikowane lub usunięte w dowolnej głównej wersji. Nie używaj funkcji w wersji beta, jeśli Twój kod jest biblioteką (czyli jest używany na ścieżce CLASSPATH użytkowników spoza Twojej kontroli).
Funkcje wycofane
Wycofane funkcje inne niż beta zostaną usunięte po 18 miesiącach od wydania, w którym zostały po raz pierwszy wycofane. Musisz poprawić przypadki użycia przed tym terminem. Jeśli tego nie zrobisz, mogą wystąpić jakiekolwiek problemy. Nie masz też gwarancji wystąpienia błędu kompilacji.
Najważniejsze informacje o bibliotece klienta interfejsów API Google dla języka Java
wywoływanie interfejsów API Google jest proste,
Interfejsy API Google możesz wywoływać, korzystając z bibliotek wygenerowanych na potrzeby konkretnych usług Google za pomocą biblioteki klienta interfejsu API Google dla języka Java. (aby znaleźć wygenerowaną bibliotekę klienta dla interfejsu API Google, zobacz listę obsługiwanych interfejsów API Google). Oto przykład użycia biblioteki klienta interfejsu API Kalendarza w Javie do wywołania interfejsu Google Calendar API:
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
Biblioteka ułatwia grupowanie i przesyłanie/pobieranie multimediów
W bibliotece dostępne są zajęcia pomocnicze dotyczące zbiorczego, przesyłania i pobierania multimediów.Biblioteka ułatwia uwierzytelnianie
Biblioteka zawiera zaawansowaną bibliotekę uwierzytelniania, która może zmniejszyć ilość kodu potrzebnego do obsługi OAuth 2.0. Czasem wystarczy kilka wierszy. Na przykład:
/** 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"); }
Biblioteka działa w Google App Engine
Asystenty App Engine wykonują szybkie uwierzytelnione wywołania interfejsów API, więc nie musisz się martwić o wymianę kodu na token.
Przykład:
Przykład:
@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(); ... }
Biblioteka działa na Androidzie 4.4 lub nowszym.
Biblioteka pomocnicza Google dla Javy jest dobrze zintegrowana z Menedżerem kont na Androidzie. Na przykład:
@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(); }
Instalacja jest prosta
Jeśli nie używasz biblioteki wygenerowanej, możesz pobrać plik binarny biblioteki klienta Google API dla języka Java bezpośrednio ze strony pobierania lub użyć narzędzia Maven lub Gradle. Aby używać Maven, dodaj do pliku pom.xml te wiersze:
Aby użyć Gradle, dodaj do pliku build.gradle te wiersze:
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
Aby użyć Gradle, dodaj do pliku build.gradle te wiersze:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }Szczegółowe informacje o instalowaniu i konfigurowaniu biblioteki klienta interfejsu API Google dla języka Java znajdziesz w instrukcjach pobierania i konfiguracji.
Obsługiwane środowiska
Biblioteka klienta interfejsów API Google dla języka Java obsługuje te środowiska Java:
- Java 7 lub nowsza, wersja standardowa (SE) i Enterprise (EE).
- Google App Engine
- Android 4.4 lub nowszy – ale jeśli dla danej usługi Google dostępna jest biblioteka Usług Google Play, skorzystaj z niej zamiast tej biblioteki. Biblioteka Google Play zapewni Ci najlepszą wydajność i wygodę korzystania z aplikacji.