Java 如何获得方法';OkHttp拦截器中的返回类型?
通过Java 如何获得方法';OkHttp拦截器中的返回类型?,java,android,kotlin,retrofit,okhttp,Java,Android,Kotlin,Retrofit,Okhttp,通过okhttp3.Request#tag(Invocation::class.java),我们可以获得methodName,annotations等。是否有任何方法可以使用Invocation类获取方法的返回类型 我试过了 request.tag(Invocation::class.java)!!。方法().返回类型 request.tag(Invocation::class.java)!!。方法().genericReturnType 但它们都只是返回类java.lang.Object,
okhttp3.Request#tag(Invocation::class.java)
,我们可以获得methodName
,annotations
等。是否有任何方法可以使用Invocation
类获取方法的返回类型
我试过了
request.tag(Invocation::class.java)!!。方法().返回类型
request.tag(Invocation::class.java)!!。方法().genericReturnType
类java.lang.Object
,即使它是一个列表
预期产量
@GET(“产品”)
suspend fun getProducts():List//我需要至少获取'List'作为此方法的字符串
@获取(“产品”)
suspend fun getProduct():Product//我需要至少获取'Object'作为此方法的字符串
它是一个挂起函数,因此java.lang reflect.Method的返回类型不是您声明的返回类型。查看反编译的字节码,您将看到Java方法以及声明的返回类型在签名中的结束位置。好的,我在签名字段字符串中看到了返回类型。现在,如何在代码中获取返回类型,它是一个私有字段@JesseUse对反射类方法的反射?:-|