Accéder facilement aux API Google à partir de Java
La bibliothèque cliente des API Google pour Java fournit des fonctionnalités communes à toutes les API Google, telles que le transport HTTP, la gestion des erreurs, l'authentification, l'analyse JSON, le téléchargement/l'importation de contenus multimédias et le traitement par lot. Cette bibliothèque inclut une bibliothèque OAuth 2.0 performante avec une interface cohérente, des modèles de données XML et JSON légers et efficaces compatibles avec tous les schémas de données, ainsi que la compatibilité avec les tampons de protocole.
Pour appeler une API Google à l'aide des bibliothèques clientes Google pour Java, vous devez disposer de la bibliothèque Java générée pour l'API Google à laquelle vous accédez. Ces bibliothèques générées incluent la bibliothèque principale google-api-java-client ainsi que des informations spécifiques à l'API telles que l'URL racine. Elles incluent également des classes qui représentent des entités dans le contexte de l'API et sont utiles pour effectuer des conversions entre des objets JSON et des objets Java.
Pour appeler une API Google à l'aide des bibliothèques clientes Google pour Java, vous devez disposer de la bibliothèque Java générée pour l'API Google à laquelle vous accédez. Ces bibliothèques générées incluent la bibliothèque principale google-api-java-client ainsi que des informations spécifiques à l'API telles que l'URL racine. Elles incluent également des classes qui représentent des entités dans le contexte de l'API et sont utiles pour effectuer des conversions entre des objets JSON et des objets Java.
Fonctionnalités bêta
Les fonctionnalités associées à la mention @Beta au niveau de la classe ou de la méthode sont susceptibles d'être modifiées. Ils peuvent être modifiés ou supprimés dans toute version majeure. N'utilisez pas de fonctionnalités bêta si votre code est lui-même une bibliothèque (c'est-à-dire, si votre code est utilisé sur le CLASSPATH des utilisateurs que vous ne contrôlez pas).
Fonctionnalités abandonnées
Les fonctionnalités non bêta obsolètes seront supprimées 18 mois après la publication dans laquelle elles sont devenues obsolètes. Vous devez corriger vos utilisations avant cette date. Si vous ne le faites pas, des dysfonctionnements peuvent se produire, et vous n'êtes pas certain qu'une erreur de compilation se produit.
Bibliothèque cliente des API Google pour Java
Il est facile d'appeler des API Google
Vous pouvez appeler des API Google à l'aide de bibliothèques générées par des services Google spécifiques à l'aide de la bibliothèque cliente des API Google pour Java. (Pour trouver la bibliothèque cliente générée pour une API Google, consultez la liste des API Google compatibles.) Voici un exemple qui utilise la bibliothèque cliente de l'API Calendar pour Java pour appeler l'API Google Agenda :
// Show events on user's calendar. View.header("Show Calendars"); CalendarList feed = client.calendarList().list().execute(); View.display(feed);
La bibliothèque facilite le traitement par lot et l'importation/le téléchargement de contenus multimédias.
La bibliothèque propose des classes d'assistance pour le traitement par lot, l'importation de contenus multimédias et le téléchargement de contenus multimédias.La bibliothèque facilite l'authentification
Elle inclut une puissante bibliothèque d'authentification qui peut réduire la quantité de code dont vous avez besoin pour gérer OAuth 2.0. Parfois, quelques lignes suffisent. Exemple:
/** 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 bibliothèque s'exécute sur Google App Engine.
Les assistants spécifiques à App Engine permettent d'effectuer rapidement des appels authentifiés aux API. Vous n'avez donc pas besoin de vous soucier d'échanger du code contre des jetons.
Par exemple :
Par exemple :
@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 bibliothèque s'exécute sur Android 4.4 ou version ultérieure.
La bibliothèque cliente Google pour les classes d'assistance spécifiques à Android pour Java est bien intégrée à Android AccountManager. Exemple:
@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(); }
Installation facile
Si vous n'utilisez pas de bibliothèque générée, vous pouvez télécharger le binaire de la bibliothèque cliente des API Google pour Java directement depuis la page de téléchargements, ou utiliser Maven ou Gradle. Pour utiliser Maven, ajoutez les lignes suivantes à votre fichier pom.xml :
Pour utiliser Gradle, ajoutez les lignes suivantes à votre fichier build.gradle :
<project> <dependencies> <dependency> <groupId>com.google.api-client</groupId> <artifactId>google-api-client</artifactId> <version>1.32.1</version> </dependency> </dependencies> </project>
Pour utiliser Gradle, ajoutez les lignes suivantes à votre fichier build.gradle :
repositories { mavenCentral() } dependencies { compile 'com.google.api-client:google-api-client:1.32.1' }Pour en savoir plus sur l'installation et la configuration de la bibliothèque cliente Google API pour Java, consultez les instructions de téléchargement et de configuration.
Environnements compatibles
La bibliothèque cliente des API Google pour Java est compatible avec les environnements Java suivants:
- Java 7 ou version ultérieure, standard (SE) et entreprise (EE).
- Google App Engine
- Android 4.4 ou version ultérieure, mais si une bibliothèque des services Google Play est disponible pour le service Google dont vous avez besoin, utilisez cette bibliothèque plutôt que celle-ci. La bibliothèque Google Play vous offrira les meilleures performances et une expérience optimale.