Status Update
Comments
du...@google.com <du...@google.com> #2
Hello, can you please attach a sample that reproduces your error?
du...@google.com <du...@google.com> #3
I’ve attached two screen recordings demonstrating the mediator's behavior during the first and second launches after installation. Additionally,
sa...@gmail.com <sa...@gmail.com> #4
Based on first_launch_after_installation.mp4
, your paging state is indeed showing null
for nextKey, so it makes sense that Paging concluded there are no more items to load.
So I think the question is why the PagingState
contains only an empty page and null
values. My guess is either
- RemoteMediator REFRESH actually returned empty data - what is the returned
allNewsItems
value on initial REFRESH? - RemoteMediator REFRESH successfully loaded data and inserted it into database, but Paging hasn't processed that yet by the time Append is triggered, so PagingState is empty.
The second case doesn't seem likely though.
If you attach an executable app, I can look into this further.
Otherwise, you may gain more insight through Paging logs with adb shell setprop log.tag.Paging VERBOSE
. You can also try implementing RemoteKeys
in this
du...@google.com <du...@google.com> #5
Hey! I ran into this same issue. It is in fact the second case you mentioned and is documented
I've published a repo
Description
Component used:Paging
Version used: 3.0.1
Devices/Android versions reproduced on: all supported
Feature request:
It would be great to have a
map
transform that contains before and after params, one of our use cases is to modify the list item if the item above it is recorded on the same day. Right now, we can achieve that usinginsertSeparators
, since it provides before and after, but I am not sure it's a recommended approach or not.