In this post
When to call activity context OR application context?
Mark Murphy says
"It can create memory leaks, if the Context from getApplicationContext() holds onto something created by your calls on it that you don't clean up. With an Activity, if it holds onto something, once the Activity gets garbage collected, everything else flushes out too. The Application object remains for the lifetime of your process."
What calls create something that the application context keeps hold of?
I have a library which needs a context for various things. It can run in the background and spans activities but to use and update activity contexts would be problematic.
I think this is probably one of the occasions where using application context is preferable?