Accede fácilmente a las APIs de Google desde Java
![](https://developers-dot-devsite-v2-prod.appspot.com/static/api-client-library/java/images/banner-java-3.png?authuser=3&%3Bhl=es-419&hl=es-419)
La biblioteca cliente de la API de Google para Java proporciona una funcionalidad común a todas las API de Google, por ejemplo, transporte HTTP, manejo de errores, autenticación, análisis de JSON, descarga y carga de medios, y agrupación en lotes. La biblioteca incluye una biblioteca OAuth 2.0 potente con una interfaz coherente; modelos de datos XML y JSON livianos y eficientes que admiten cualquier esquema de datos; y compatibilidad con búferes de protocolo.
Para llamar a una API de Google usando las bibliotecas cliente de Google para Java, necesitas la biblioteca Java generada para la API de Google a la que accedes. Estas bibliotecas generadas incluyen la biblioteca principal google-api-java-client junto con información específica de las API, como la URL raíz. También incluyen clases que representan entidades en el contexto de la API y que son útiles para realizar conversiones entre objetos JSON y Java.
Para llamar a una API de Google usando las bibliotecas cliente de Google para Java, necesitas la biblioteca Java generada para la API de Google a la que accedes. Estas bibliotecas generadas incluyen la biblioteca principal google-api-java-client junto con información específica de las API, como la URL raíz. También incluyen clases que representan entidades en el contexto de la API y que son útiles para realizar conversiones entre objetos JSON y Java.
Funciones obsoletas
Las funciones obsoletas que no sean beta se quitarán dieciocho meses después del lanzamiento en el que se dieron de baja por primera vez. Debes corregir tus usos antes de este momento. Si no lo haces, se puede producir cualquier tipo de falla y no se garantiza que haya un error de compilación.
Aspectos destacados de la biblioteca cliente de las API de Google para Java
Llamar a las APIs de Google es sencillo.
Puedes llamar a las APIs de Google usando las bibliotecas generadas por servicios de Google con la biblioteca cliente de la API de Google para Java. (Si quieres encontrar la biblioteca cliente generada para una API de Google, visita la lista de APIs de Google compatibles). Este es un ejemplo en el que se usa la biblioteca cliente de la API de Calendar para Java a fin de realizar una llamada a la API del Calendario de Google:
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
La biblioteca facilita el procesamiento por lotes y la carga y descarga de contenido multimedia
La biblioteca ofrece clases auxiliares para agrupamiento en lotes, carga de contenido multimedia y descarga de contenido multimedia.La biblioteca facilita la autenticación
La biblioteca incluye una potente biblioteca de autenticación que puede reducir la cantidad de código que necesitas para controlar OAuth 2.0. A veces, solo necesitas unas pocas líneas. Por ejemplo:
/** 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 biblioteca se ejecuta en Google App Engine
Los ayudantes específicos de App Engine facilitan el trabajo de las llamadas autenticadas a las APIs y no tienes que preocuparte por intercambiar código por tokens.
Por ejemplo:
Por ejemplo:
@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 biblioteca se ejecuta en Android 4.4 o versiones posteriores.
La biblioteca cliente de Google para las clases de ayuda específicas de Android de Java están bien integradas en Android AccountManager. Por ejemplo:
@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(); }
La instalación es sencilla
Si no usas una biblioteca generada, puedes descargar el objeto binario de la biblioteca cliente de la API de Google para Java directamente desde la página de descargas, o bien puedes usar Maven o Gradle. Para usar Maven, agrega las siguientes líneas a tu archivo pom.xml:
Para usar Gradle, agrega las siguientes líneas al archivo build.gradle:
Para obtener más detalles sobre cómo instalar y configurar la API de Google
para Java, consulta la
descargar
y las instrucciones de configuración.
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
Para usar Gradle, agrega las siguientes líneas al archivo build.gradle:
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }
Entornos compatibles
La biblioteca cliente de las API de Google para Java es compatible con los siguientes entornos de Java:
- Java 7 o versiones posteriores, Standard (SE) y Enterprise (EE).
- Google App Engine.
- Android 4.4 o una versión posterior; pero, si hay una biblioteca de los Servicios de Google Play disponible para el servicio de Google que necesitas, usa esa biblioteca en lugar de esta. La biblioteca de Google Play te brindará el mejor rendimiento y experiencia posibles.