【问题标题】:Recursively fetch data from the api从 api 递归获取数据
【发布时间】:2020-06-26 15:43:30
【问题描述】:

我需要从分页的 API 中获取所有数据。在我有一个 RecyclerView 之前,我已经实现了类似的方式,它 onScrolled() 我会检查是否存在更多数据,然后获取下一页。现在,我没有任何 RecyclerView,首先,我需要从 API 递归地获取所有数据进行处理。我应该使用 RxJava 吗?对 RxJava 不是很熟悉。目前我为 API 使用 Retrofit。关于实现它的最佳方法的任何提示?

【问题讨论】:

    标签: android api retrofit


    【解决方案1】:

    如果您同步调用 API,您可以执行以下操作:

    val responses = arrayListOf<Response>()
    
    fun fetchDataFromApi(key: String?) {
        val response = getData(key)
        responses.add(response)
        if(response.hasNext) {
          fetchDataFromApi(response.nextKey)
        }
    }
    

    【讨论】:

    • 它不告诉总页数,但 hasNext 作为一个布尔值,它会告诉是否有下一页。所以不是迭代器
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-11-08
    • 2021-12-26
    • 2016-08-17
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-10-21
    相关资源
    最近更新 更多