简体   繁体   English

为什么Android Studio中的Java文件不同于Java文件从classes.dex中提取

[英]why java files in android studio Different from the java file Extract from classes.dex

我在android studio上有一个应用程序,当我从apk提取Java文件时有apk,为什么它们不是android studio上的相同代码,为什么?

Your compiled java files usually goes through a process called obfuscation by using an app called proguard . 您编译的Java文件通常使用名为proguard的应用程序进行一个称为混淆的过程。

Here's what obfuscation explained by wiki: 这是维基对混淆的解释:

Obfuscation is the obscuring of the intended meaning of communication by making the message difficult to understand, usually with confusing and ambiguous language. 混淆是通过使消息难以理解(通常使用混乱和模棱两可的语言)来模糊通信的预期含义。 The obfuscation might be either unintentional or intentional (although intent usually is connoted), and is accomplished with circumlocution (talking around the subject), the use of jargon (technical language of a profession), and the use of an argot (ingroup language) of limited communicative value to outsiders. 混淆可能是无意的或有意的(尽管通常会包含意图),并且可以通过割礼(谈论主题),使用行话(专业的技术语言)和使用隐语(内联语言)来完成与外界的交流价值有限。

Since it is already obfuscated, when you reverse the bytecode back to a java file, it will be different than the actual file. 由于已被混淆,因此当您将字节码反转回Java文件时,它将与实际文件不同。 However, coding structure and such will remain the same. 但是,编码结构等将保持不变。

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM