Are you looking for a unique solution for all occasions. But not always happens, each task requires its own solutions.
+1
But then I can't use CursorLoader c CursorAdapter. Or am I mistaken?
Yes, if the field is not _id is inaccessible to a number of native features of the sdk even by clicking on a list item you won't get the key (out of the box if PK _id clicked on a list item you will get its _id)
In fact _id is standard for android, so except in cases where for some very important reasons you need to name the PC as something else, I would recommend to call a PK _id
For example to do something like repository, but without provider
Of course you can, but then a number of features you have to cut yourself
I like ContentProvider for its simplicity, but don't like the curve of api (no, really, a method in which almost all the parameters often null in 2016 is a Chur) but its api kompensiruet its stability
once more describe a case of its use when you do not need to give it access
Client spherical online store
for clarity, let's imagine that we have a tablet and that the screen is divided into 2 fragments
the first piece of tape products
the second basket
(Yes a weird ux, but what to do .... )
in the tape, the user presses the button add to cart, while magically updated ui in the second fragment if no complex logic is to realize it does not need
I think the same effect can be achieved when using rxjava but will have to sweat