Google a livré une nouvelle version bêta de leur SDK connu sous le nom de APIs Google pour .NET. Ce SDK est une bibliothèque de classes portables, il couvre 45 des APIs Google. Ceci permet à Google de délivrer une seule DLL qui fonctionne sous .NET, WinRT, Windows Phone et Silverlight.
Les APIs .NET de Google sont basées sur la version PCL de HttpClient. Cette version offre des avantages significatifs par rapport aux versions précédentes parce qu'elle propose des méthodes asynchrones basées sur la classe Task.
La contrepartie est que HttpClient ne dispose pas d'une licence pour les machines non Windows. Ce qui pourrait se révéler problématique pour ceux qui utilisent Mono pour cibler des machines sous Linux, iOS ou Android.
Google a étendu HttpClient à l'aide d'une classe qu'ils appellent ConfigurableMessageHandler. "Ce gestionnaire supporte l'injection d'un gestionnaire de requêtes échouées, l'exécution d'intercepteurs, et de propriétés telles que le nombre d'essais, le nom de l'application (pour utiliser l'en-tête User-Agent), etc".
La release note ne s'arrête pas là,
Nous avons aussi ajouté un BackOffHandler qui permet d'effectuer de nouvelles tentatives automatiquement en cas d'erreurs côté serveur (5xx) ou en cas de levée d'exception pendant l'exécution de la requête. Ce gestionnaire est associé par défaut au BaseClientService, mais vous pouvez changer ce comportement par défaut en utilisant le DefaultExponentialBackOffPolicy dans BaseClientService. Initializer.
Il y a quelques modifications non rétro-compatibles par rapport à la bêta 1.3, essentiellement dans la classe ClientServiceRequest. De la même manière que pour les nouvelles lignes directrices de conception .NET, les méthodes asynchrones qui exposaient précédemment des callbacks retournent à présent un objet asynchrone Task.
Les librairies tierces nécessaires pour l'API Google pour .NET doivent être installées via NuGet, mais la librairie elle-même ne sera disponible sur NuGet que plus tard.
Pour votre convenance, voici une liste des APIs actuellement supportées par le SDK.
- APIs Discovery Service
- Ad Exchange Buyer API
- Ad Exchange Seller API
- AdSense Host API
- AdSense Management API
- Admin Reports API
- BigQuery API
- Blogger API
- Books API
- Calendar API
- Cloud SQL Administration API
- Cloud Storage API
- Compute Engine API
- CustomSearch API
- DFA Reporting API
- Drive API
- Enterprise Apps Reseller API
- Enterprise Audit API
- Enterprise License Manager API
- Freebase API
- Fusion Tables API
- Google Affiliate Network API
- Google Analytics API
- Google Civic Information API
- Google Cloud Datastore API
- Google Fonts Developer API
- Google Latitude API
- Google Maps Coordinate API
- Google Mirror API
- Google OAuth2 API
- Google Play Android Developer API
- Google Site Verification API
- Google+ API
- Groups Migration API
- Groups Settings API
- Orkut API
- Page Speed Online API
- Prediction API
- Search API For Shopping
- TaskQueue API
- Tasks API
- Translate API
- URL Shortener API
- YouTube Analytics API
- YouTube Data API