Einfacher Zugriff auf Google APIs über Java

Die Google API-Clientbibliothek für Java bietet gängige Funktionen aller Google APIs, z. B. HTTP-Transport, Fehlerbearbeitung, Authentifizierung, JSON-Parsing, Mediendownload/-upload und Batchverarbeitung. Die Bibliothek enthält eine leistungsstarke OAuth 2.0-Bibliothek mit konsistenter Schnittstelle, einfachen, effizienten XML- und JSON-Datenmodellen, die jedes Datenschema unterstützen, und Protokollzwischenspeicher.
Wenn Sie eine Google API mit Google-Clientbibliotheken für Java aufrufen möchten, benötigen Sie die generierte Java-Bibliothek für die Google API, auf die Sie zugreifen. Zu diesen generierten Bibliotheken zählen die google-api-java-client-Kernbibliothek sowie API-spezifische Informationen wie die Stamm-URL. Dazu gehören auch Klassen, die Entitäten im Kontext der API darstellen und nützlich sind, um Konvertierungen zwischen JSON- und Java-Objekten zu erzielen.
Wenn Sie eine Google API mit Google-Clientbibliotheken für Java aufrufen möchten, benötigen Sie die generierte Java-Bibliothek für die Google API, auf die Sie zugreifen. Zu diesen generierten Bibliotheken zählen die google-api-java-client-Kernbibliothek sowie API-spezifische Informationen wie die Stamm-URL. Dazu gehören auch Klassen, die Entitäten im Kontext der API darstellen und nützlich sind, um Konvertierungen zwischen JSON- und Java-Objekten zu erzielen.
Betafunktionen
Funktionen, die auf Klassen- oder Methodenebene mit @Beta gekennzeichnet sind, können sich ändern. Sie können in jeder Hauptversion geändert oder entfernt werden. Verwenden Sie keine Betafunktionen, wenn Ihr Code eine Bibliothek selbst ist (d. h., wenn Ihr Code im CLASSPATH der Nutzer außerhalb Ihrer Kontrolle verwendet wird).
Eingestellte Funktionen
Verworfene Funktionen, die keine Betaversionen sind, werden 18 Monate nach der Veröffentlichung entfernt, in der sie zuerst verworfen wurden. Sie müssen Ihre Nutzungsdaten vor diesem Datum korrigieren. Andernfalls kann es zu einem Fehler kommen und es kann nicht garantiert werden, dass ein Kompilierungsfehler vorliegt.
Highlights der Google API-Clientbibliothek für Java
Einfacher Aufruf von Google APIs
Sie können Google APIs mithilfe der dienstspezifischen Bibliotheken von Google mit der Google API-Clientbibliothek für Java aufrufen. Die generierte Clientbibliothek für eine Google API finden Sie in der Liste der unterstützten Google APIs. Hier sehen Sie ein Beispiel, wie mit der Calendar API-Clientbibliothek für Java die Google Calendar API aufgerufen wird:
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
Die Mediathek erleichtert das Batchen und Hochladen/Herunterladen von Medien
Die Bibliothek bietet Hilfsklassen für die Batchverarbeitung, den Medienupload und den Mediendownload.Die Bibliothek vereinfacht die Authentifizierung
Die Bibliothek enthält eine leistungsstarke Authentifizierungsbibliothek, mit der Sie die Menge an Code reduzieren können, den Sie für OAuth 2.0 benötigen. Manchmal brauchen Sie nur ein paar Zeilen. Beispiel:
/** 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"); }
Die Bibliothek wird in Google App Engine ausgeführt.
Mit App Engine-spezifischen Hilfsfunktionen können authentifizierte API-Aufrufe schnell ausgeführt werden. Sie müssen sich also nicht um den Austausch von Code mit Tokens kümmern.
Beispiel:
Beispiel:
@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(); ... }
Sie wird unter Android 4.4 oder höher ausgeführt.
Die Android-spezifischen Hilfsklassen für die Google-Clientbibliothek für Java sind optimal in den Android AccountManager integriert. Beispiel:
@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(); }
Einfache Installation
Wenn Sie keine generierte Bibliothek verwenden, können Sie das Binärprogramm für die Google API-Clientbibliothek für Java direkt von der Downloadseite herunterladen oder Maven oder Gradle verwenden. Fügen Sie der Datei pom.xml die folgenden Zeilen hinzu, um Maven zu verwenden:
Fügen Sie der Datei „build.gradle“ die folgenden Zeilen hinzu, um Gradle zu verwenden:
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
Fügen Sie der Datei „build.gradle“ die folgenden Zeilen hinzu, um Gradle zu verwenden:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }Weitere Informationen zum Installieren und Einrichten der Google API-Clientbibliothek für Java finden Sie in der Anleitung zum Herunterladen und Einrichten.
Unterstützte Umgebungen
Die Google API-Clientbibliothek für Java unterstützt folgende Java-Umgebungen:
- Java 7 oder höher, Standard (SE) und Enterprise (EE)
- Google App Engine
- Android 4.4 oder höher. Wenn für den Google-Dienst, den Sie benötigen, eine Bibliothek mit Google Play-Diensten verfügbar ist, können Sie auch diese verwenden. Die Google Play-Mediathek bietet Ihnen die bestmögliche Leistung und Nutzung.