Android kotlin调试协同程序

Android kotlin调试协同程序,android,kotlin,kotlin-coroutines,Android,Kotlin,Kotlin Coroutines,在协同程序之前,我使用回调和调试总是给我很多信息。我可以得到API调用要访问的url、我放入请求的头、我使用的拦截器等等 现在我使用协同程序。调试时,我能得到的只有请求的最终结果(失败/成功)和结果数据。所有这些我需要的有价值的信息都没有 我的代码的简化示例: restService.getVersionInfo().getResult( success = { when { checkIsMand

在协同程序之前,我使用回调和调试总是给我很多信息。我可以得到API调用要访问的url、我放入请求的头、我使用的拦截器等等

现在我使用协同程序。调试时,我能得到的只有请求的最终结果(失败/成功)和结果数据。所有这些我需要的有价值的信息都没有

我的代码的简化示例:

 restService.getVersionInfo().getResult(
            success = {
                when {
                    checkIsMandatory(it.lastMandatoryVersion) -> status.postValue(
                        Status.NewVersionInfo(it.description, true, it.url)
                    )

                    else -> initialization()
                }
            },
            error = {
                initialization()
            }

我将断点推到错误或成功。我是否错过了一些东西,或者合作项目确实有这个缺点。请通知我

嘿!我认为在getResult方法中可以看到这些细节。但是,如果您正在从回调更改为高阶函数,或者从线程更改为协程。它将为您提供所需的相同日志和信息。
在协同程序之前,我使用回调
回调实际上与协同程序做的事情不同,是吗?我很好奇你是如何使用回调来实现协同程序的does@a_local_nobody由于协同程序在其实现中使用了这些回调,我可以非常清楚地看到OP的含义。啊,我想我理解了,谢谢@MarkoTopolnikI,我不认为这是协同程序特有的,但要注意将回调API映射到可挂起函数的方式。它们的实现往往是为了给常见情况提供最大的便利,但是一个好的库也会有办法返回整个结果对象。您还可以直接在原始异步API的基础上实现自己的可挂起函数,并根据您的需要和喜好进行定制。