我知道在Android Studio中,我们可以从
将Kotlin字节码反编译为Java。 Tools->Kotlin->Show Kotlin Bytecode
,然后在打开的窗口中Decompile
。但是结果有点混乱。
例如,在此代码中,变量名称更改为var1
,var2
,依此类推,并在返回值类型中遗漏了泛型类型。
科特林代码:
@GET("webservicesample")
fun advancedSearchCall(@Query("parms[catid]") catID: String,
@Query("parms[min]") minPrice: String,
@Query("parms[max]") maxPrice: String,
@Query("parms[brandid]") brandId: String,
@Query("parms[minpre]") minPrePay: String,
@Query("parms[maxpre]") maxPrePay: String,
@Query("parms[id]") lastResult: String,
@Query("parms[number]") number: String)
: Call<AdvancedSearchResponse>
从字节码反编译为Java:
@GET("webserviceexample")
@NotNull Call advancedSearchCall(
@Query("parms[catid]") @NotNull String var1,
@Query("parms[min]") @NotNull String var2,
@Query("parms[max]") @NotNull String var3,
@Query("parms[brandid]") @NotNull String var4,
@Query("parms[minpre]") @NotNull String var5,
@Query("parms[maxpre]") @NotNull String var6,
@Query("parms[id]") @NotNull String var7,
@Query("parms[number]") @NotNull String var8);
我想知道从Kotlin反编译时是否有办法防止这种情况并获得干净的Java代码?