Android studio 为什么当我打开我的项目时,android studio会从中反编译类?

Android studio 为什么当我打开我的项目时,android studio会从中反编译类?,android-studio,decompiler,Android Studio,Decompiler,Android Studio在我的系统上从3.2版自动更新到4.0.1版,但是由于我发现4.0.1版有潜在的bug,我安装了一个以前的版本(3.5.3),当我打开一个项目时,它只是一个小的简单测试项目,似乎需要加载一段时间,打开之前我看到的最后一个对话框是 标题:“加载项目…” 正文:“反编译类CountDownTimer.class 在以前的版本中,我没有看到这种行为,也找不到任何“反编译器”“设置中也有选项,问题是为什么Android Studio在默认情况下反编译我的类文件?为什么需要这样

Android Studio在我的系统上从3.2版自动更新到4.0.1版,但是由于我发现4.0.1版有潜在的bug,我安装了一个以前的版本(3.5.3),当我打开一个项目时,它只是一个小的简单测试项目,似乎需要加载一段时间,打开之前我看到的最后一个对话框是

标题:“加载项目…”

正文:“反编译类CountDownTimer.class


在以前的版本中,我没有看到这种行为,也找不到任何“反编译器”“设置中也有选项,问题是为什么Android Studio在默认情况下反编译我的类文件?为什么需要这样做?基本原理是什么?

如果它找不到源代码,那通常就是你想要和期望的。为什么它找不到源代码?什么时候它总是出现在项目中?在软件工程方面,我希望IDE将java源代码编译成字节码,我不希望它反编译任何东西,因为这属于逆向工程领域。这种行为肯定不是我想要或期望的,因此产生了这个问题的原因。“始终存在于项目中”——好吧,这取决于您的项目设置是否正确——源目录是否实际注册为源目录f/e,因此其内容被索引和识别。当你在一个没有源代码的库中遇到一个bug时,简单的反向工程是非常方便的,这可能是我欣赏这个特性的主要原因。谢谢你的评论。毫无疑问,我的项目设置正确。我明白你的意思,通过编译我自己的代码,我在API中发现了很多bug。因此,如果Android Studio在API代码或某些类或jar依赖项中遇到错误,它会对其进行反编译,以便向开发人员展示源代码?它不是自动将我的源代码编译成类文件,而是做完全相反的事情,每次我打开我的项目时自动将我编译的类反编译成源代码,这仍然没有意义。