【发布时间】:2021-03-17 14:05:09
【问题描述】:
我正在使用 ApkTool 从 APK 中分解 DEX 文件以恢复 smali 代码。我注意到.java 文件已被拆分为不同的文件。
例如:
- MainActivity.java -> MainActivity.smali, MainActivity$1.smali
- FirstFragment.java -> FirstFragment.smali, FirstFragment$1.smali, FirstFragment$2.smali
发生这种情况有什么原因吗?
对此我还有一个问题:如果这些文件的第一行引用同一个文件,为什么它们的第一行会有不同的内容?它们都引用了源“MainActivity.java”,但有不同的类。
MainActivity$1.smali
.class Lcom/example/testapp/MainActivity$1;
.super Ljava/lang/Object;
.source "MainActivity.java"
MainActivity.smali
.class public Lcom/example/testapp/MainActivity;
.super Landroidx/appcompat/app/AppCompatActivity;
.source "MainActivity.java"
【问题讨论】:
标签: android reverse-engineering smali apktool