1

Is there any Android Studio plugin or other way to check the content of the Apollo client cache?

I have a GraphQL plugin tab in Android Studio enter image description here but I can't find a functionality there to view the cache?

Update: I currently have this plugin but the documentation doesn't mention the cache at all. Seems like I need to fire up the debugger to see the cache content ):

stefan.at.kotlin
  • 15,347
  • 38
  • 147
  • 270

1 Answers1

1

At the moment there isn't any way to see the contents of the cache directly from the IDE, but there is a programmatic way to do so, so you can dump its contents in the logs:

val dump = apolloClient.apolloStore.dump()
Log.d(TAG, NormalizedCache.prettifyDump(dump))

Here's an example of the results:

OptimisticCache {}
MemoryCache {
  "User:42" : {
    "id" : 42
    "name" : name
    "email" : email
    "__typename" : User
  }

  "User:43" : {
    "id" : 43
    "name" : name
    "email" : email
    "__typename" : User
  }

  "QUERY_ROOT" : {
    "users" : [
      CacheKey(User:42)
      CacheKey(User:43)
    ]
  }
}
SqlNormalizedCache {
  "User:42" : {
    "id" : 42
    "name" : name
    "email" : email
    "__typename" : User
  }

  "User:43" : {
    "id" : 43
    "name" : name
    "email" : email
    "__typename" : User
  }

  "QUERY_ROOT" : {
    "users" : [
      CacheKey(User:42)
      CacheKey(User:43)
    ]
  }
}
BoD
  • 10,838
  • 6
  • 63
  • 59