java - 将 Kotlin 字节码反编译为 java 以使变量名相同?
问题描述
我知道在 Android Studio 中我们可以将 Kotlin 字节码从
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 代码?
解决方案
推荐阅读
- jquery - 使用 Ajax 和 WordPress、Woocommerce 和 Divi 创建选项卡
- python - OSError: [WinError 193] %1 不是有效的 Win32 应用程序 (Pandas)
- powershell - 用户 PowerShell 在 Azure Devops 中对生成进行排队
- laravel - 在 Laravel Sanctum/Airlock 中出现 401 错误
- javascript - 在文本通道中随机选择用户
- python - Stocker 模块旧数据
- python - Dask:在 groupby 中使用 Grouper 后迭代组
- sql - 在 Amazon Redshift 中检查数字是整数还是浮点数
- python - Python:没有 pip 文件
- javascript - 如何在 React TypeScript 中实现 e 和 props?