Bibliothèques Android intégrées

Bibliothèques intégrées

Coil

Si vous utilisez Coil pour charger des images dans votre application, testez la bibliothèque Coil dédiée de Datadog.

Fresco

Si vous utilisez Fresco pour charger des images dans votre application, testez la bibliothèque Fresco dédiée de Datadog.

Glide

Si vous utilisez Glide pour charger des images dans votre application, testez la bibliothèque Glide dédiée de Datadog.

Picasso

Si vous utilisez la bibliothèque Picasso, laissez-la utiliser votre client OkHttpClient pour récupérer des informations RUM et APM sur les requêtes réseau effectuées par Picasso.

    val picasso = Picasso.Builder(context)
         .downloader(OkHttp3Downloader(okHttpClient)) 
         // ...
         .build()
    Picasso.setSingletonInstance(picasso)
     final Picasso picasso = new Picasso.Builder(context)
         .downloader(new OkHttp3Downloader(okHttpClient))
         // ...
         .build();
     Picasso.setSingletonInstance(picasso);

Retrofit

Si vous utilisez la bibliothèque Retrofit, laissez-la utiliser votre client OkHttpClient pour récupérer des informations RUM et APM sur les requêtes réseau effectuées par Retrofit.

     val retrofitClient = Retrofit.Builder()
         .client(okHttpClient)
         // ...
         .build()
     final Retrofit retrofitClient = new Retrofit.Builder()
         .client(okHttpClient)
         // ...
         .build();

SQLDelight

Si vous utilisez SQLDelight, testez la bibliothèque SQLDelight dédiée de Datadog.

SQLite

Conformément à la documentation générée sur l’API de SQLiteOpenHelper, il vous suffit de spécifier l’implémentation de DatabaseErrorHandler -> DatadogDatabaseErrorHandler dans le constructeur.

Cette intégration permet de détecter toute corruption de base de données et d’envoyer un événement d’erreur RUM associé.

     class <YourOwnSqliteOpenHelper>: SqliteOpenHelper(
                                     <Context>, 
                                     <NOM_BASE_DE_DONNÉES>, 
                                     <CursorFactory>, 
                                     <VERSION_BASE_DE_DONNÉES>,
                                     DatadogDatabaseErrorHandler()) {
         // ...

     }
    public class <YourOwnSqliteOpenHelper> extends SqliteOpenHelper {
         public <YourOwnSqliteOpenHelper>(){
             super(<Context>,
                   <NOM_BASE_DE_DONNÉES>,
                   <CursorFactory>,
                   <VERSION_BASE_DE_DONNÉES>,
                   new DatadogDatabaseErrorHandler());
         }
    }

Apollo (GraphQL)

Si vous utilisez Apollo, laissez-le utiliser votre client OkHttpClient pour récupérer des informations RUM et APM sur les requêtes effectuées via le client Apollo.

     val apolloClient =  ApolloClient.builder()
         .okHttpClient(okHttpClient)
         .serverUrl(<URL_SERVEUR_APOLLO>)
         .build()
     final ApolloClient apolloClient = new ApolloClient.builder()
         .okHttpClient(okHttpClient)
         .serverUrl(<URL_SERVEUR_APOLLO>)
         .build();

Android TV (Leanback)

Si vous utilisez l’API Leanback pour ajouter des actions à votre application Android TV, testez la bibliothèque Android TV dédiée de Datadog.

Pour aller plus loin

Documentation, liens et articles supplémentaires utiles: