How is using a ContentProviderClient
obtained with ContentResolver#acquireContentProviderClient(...)
any different from ContentResolver#acquireUnstableContentProviderClient(...)
?
It seems like I would write the same code regardless of which method I used. Is there going to be some kind of leak in my app if the ContentProvider acquired goes away and I used the non-unstable method to acquire the client?
So I guess that if the ContentProvider you want to use is running in the same process or if it is running in system_server
then you can go ahead and acquire the client using the stable method, otherwise you should use the unstable method in case the other process crashes or the app hosting the ContentProvider is uninstalled/reinstalled while you are using it. But that leads me to ask is there some kind of advantage to using the stable version of the acquire method, why not just always use the unstable version of the method just in case?
Also what exactly do they mean when they say the following?
This turns off the mechanism in the platform clean up processes that are dependent on a content provider if that content provider's process goes away.