Accedi facilmente alle API di Google da Java
![](https://developers-dot-devsite-v2-prod.appspot.com/static/api-client-library/java/images/banner-java-3.png?authuser=0000&%3Bhl=it&hl=it)
La libreria client delle API di Google per Java fornisce funzionalità comuni a tutte le API di Google, ad esempio trasporto HTTP, gestione degli errori, autenticazione, analisi JSON, download/caricamento di contenuti multimediali e batch. La libreria include una potente libreria OAuth 2.0 con un'interfaccia coerente, modelli di dati XML e JSON leggeri ed efficienti che supportano qualsiasi schema di dati e supporto per buffer di protocollo.
Per chiamare un'API di Google utilizzando le librerie client di Google per Java, è necessaria la libreria Java generata per l'API di Google a cui stai accedendo. Queste librerie generate includono la libreria principale google-api-java-client e informazioni specifiche dell'API, come l'URL principale. Inoltre, includono classi che rappresentano entità nel contesto dell'API e che sono utili per effettuare conversioni tra oggetti JSON e oggetti Java.
Per chiamare un'API di Google utilizzando le librerie client di Google per Java, è necessaria la libreria Java generata per l'API di Google a cui stai accedendo. Queste librerie generate includono la libreria principale google-api-java-client e informazioni specifiche dell'API, come l'URL principale. Inoltre, includono classi che rappresentano entità nel contesto dell'API e che sono utili per effettuare conversioni tra oggetti JSON e oggetti Java.
Funzionalità beta
Le funzionalità contrassegnate con @Beta a livello di classe o di metodo sono soggette a modifica. Potrebbero essere modificati o rimossi in qualsiasi release principale. Non utilizzare le funzionalità beta se il codice è una libreria stessa (vale a dire, se il tuo codice viene utilizzato sul CLASSPATH di utenti al di fuori del tuo controllo).
Funzionalità ritirate
Le funzionalità non beta deprecate verranno rimosse diciotto mesi dopo il rilascio in cui vengono ritirate per la prima volta. Devi correggere i tuoi utilizzi prima di questo periodo. In caso contrario, potrebbe verificarsi qualsiasi tipo di interruzione e non è garantito un errore di compilazione.
Caratteristiche principali della libreria client delle API di Google per Java
Chiamare le API di Google è semplice
Puoi chiamare le API di Google utilizzando le librerie generate specifiche del servizio Google con la libreria client dell'API di Google per Java. Per trovare la libreria client generata per un'API di Google, consulta l'elenco delle API di Google supportate. Ecco un esempio in cui viene utilizzata la libreria client dell'API Calendar per Java per effettuare una chiamata all'API Google Calendar:
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
La libreria semplifica la gestione in batch e il caricamento/download di contenuti multimediali
La libreria offre classi helper per il raggruppamento in batch, il caricamento di contenuti multimediali e il download di contenuti multimediali.La libreria semplifica l'autenticazione
La libreria include una potente libreria di autenticazione in grado di ridurre la quantità di codice necessaria per gestire OAuth 2.0. A volte bastano poche righe. Ad esempio:
/** 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"); }
La libreria viene eseguita su Google App Engine
Gli helper specifici di App Engine consentono di eseguire rapidamente le chiamate autenticate alle API e non devi preoccuparti di scambiare codice per token.
Ad esempio:
Ad esempio:
@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(); ... }
La libreria è supportata su Android 4.4 o versioni successive.
La libreria client di Google per le classi helper specifiche di Java per Android sono ben integrate con Android AccountManager. Ad esempio:
@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(); }
L'installazione è facile
Se non utilizzi una libreria generata, puoi scaricare il programma binario della libreria client dell'API di Google per Java direttamente dalla pagina dei download oppure puoi utilizzare Maven o Gradle. Per utilizzare Maven, aggiungi le seguenti righe al file pom.xml:
Per utilizzare Gradle, aggiungi le seguenti righe al file build.gradle:
Per ulteriori dettagli sull'installazione e la configurazione dell'API di Google
sulla libreria client per Java, consulta
scarica
e configurazione.
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
Per utilizzare Gradle, aggiungi le seguenti righe al file build.gradle:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }
Ambienti supportati
La libreria client delle API di Google per Java supporta i seguenti ambienti Java:
- Java 7 o superiore, standard (SE) ed enterprise (EE).
- Google App Engine.
- Android 4.4 o versioni successive. Tuttavia, se è disponibile una libreria di Google Play Services per il servizio Google che ti serve, puoi utilizzare quella libreria anziché questa. La raccolta di Google Play ti offrirà la migliore esperienza e prestazioni possibili.