Android MediaBrowser(Compat)使用分页订阅/查询项目

Android MediaBrowser(Compat)使用分页订阅/查询项目,android,pagination,android-support-library,Android,Pagination,Android Support Library,在我的服务端,它有巨大的数据,我想提供分页方式的项目。 在MediaBrowser/MediaBrowserService(Compat)之间是否有任何建议的分页流要遍历 我想在Result中提供部分数据,而不是所有数据(例如所有YouTube歌曲),同时浏览器端使用分页一次提取部分数据。在您的 MediaService extends MediaBrowserServiceCompat @Override public void onLoadChildren(@NonNull f

在我的服务端,它有巨大的数据,我想提供分页方式的项目。 在MediaBrowser/MediaBrowserService(Compat)之间是否有任何建议的分页流要遍历

我想在
Result
中提供部分数据,而不是所有数据(例如所有YouTube歌曲),同时浏览器端使用分页一次提取部分数据。

在您的

MediaService extends MediaBrowserServiceCompat

  @Override
    public void onLoadChildren(@NonNull final String parentMediaId, @NonNull final Result<List<MediaItem>> result) {
       result.detach();
       for (int page = 0; i<pages.size(); i++){
            result.sendResult(getList(page));
         }
    }
public List<MediaItem> getList(int page){
  //here create List for page-number == page
}
然后,在您的服务中:

 @Override
        public void onLoadChildren(@NonNull final String page, @NonNull final Result<List<MediaItem>> result) {
           result.detach();
           result.sendResult(getList(page));

        }
@覆盖
public void onLoadChildren(@NonNull final String page,@NonNull final Result){
result.detach();
result.sendResult(getList(第页));
}
在您的

MediaService extends MediaBrowserServiceCompat

  @Override
    public void onLoadChildren(@NonNull final String parentMediaId, @NonNull final Result<List<MediaItem>> result) {
       result.detach();
       for (int page = 0; i<pages.size(); i++){
            result.sendResult(getList(page));
         }
    }
public List<MediaItem> getList(int page){
  //here create List for page-number == page
}
然后,在您的服务中:

 @Override
        public void onLoadChildren(@NonNull final String page, @NonNull final Result<List<MediaItem>> result) {
           result.detach();
           result.sendResult(getList(page));

        }
@覆盖
public void onLoadChildren(@NonNull final String page,@NonNull final Result){
result.detach();
result.sendResult(getList(第页));
}

我想在我的应用程序中做一件类似的事情——我想以分页方式返回设备上现有的歌曲。正如您所说,onLoadChildren()方法中的部分结果。我最终使用Android的新功能来实现这一点。使用这个库,我可以让客户端/UI只向服务请求用户感兴趣的页面,然后只向onLoadChildren()方法中的页面提供服务,调用客户端的subscribe()方法来检索它。
我在a中详细介绍了它,我还提供了代码示例以更好地演示这一概念。

我想在我的应用程序中做一件类似的事情——我想以分页方式返回设备上现有的歌曲。正如您所说,onLoadChildren()方法中的部分结果。我最终使用Android的新功能来实现这一点。使用这个库,我可以让客户端/UI只向服务请求用户感兴趣的页面,然后只向onLoadChildren()方法中的页面提供服务,调用客户端的subscribe()方法来检索它。
我在a中详细介绍了它,并给出了代码示例,以更好地演示该概念。

这并不能真正回答问题。如果您有不同的问题,可以单击以提问。一旦你有足够的时间,你也可以吸引更多的注意力想解释一下为什么这不能回答这个问题吗?我描述了我是如何解决一个非常类似的问题的,甚至链接到我写的帖子,在那里我更详细地解释了解决方案,并分享了代码示例。我认为我的答案,通过链接的帖子,可以真正回答这个问题并帮助提问者,因为他问起分页,这正是我面临的问题。这并不能真正回答这个问题。如果您有不同的问题,可以单击以提问。一旦你有足够的时间,你也可以吸引更多的注意力想解释一下为什么这不能回答这个问题吗?我描述了我是如何解决一个非常类似的问题的,甚至链接到我写的帖子,在那里我更详细地解释了解决方案,并分享了代码示例。我认为我的答案,通过链接的帖子,可以真正回答这个问题并帮助提问者,因为他问起分页,这正是我面临的问题。