【问题标题】:Extract code from .aar file Android从 .aar 文件 Android 中提取代码
【发布时间】:2016-03-18 10:06:44
【问题描述】:

如何从 aar 文件中提取代码。[不小心我的主项目在另一个系统上,无法访问我的邮件中只有 aar 文件]

我需要从 aar 文件中提取 JNI 代码。我尝试将扩展名更改为 .jar 但仅提取 .class,有人知道如何提取该 aar 的东西。

【问题讨论】:

  • .aar 只是一个 zip 文件,提取其内容时会出现什么问题?

标签: android android-ndk java-native-interface


【解决方案1】:

只需按照步骤从 .aar 文件中提取代码 例如:libraryproject.aar

1.将库文件扩展名重命名为".jar" ex.libraryproject.jar

2.解压文件夹中的文件。

3.Folder 将有 AndroidManifestresourceslibrary files 在 android library 项目中使用。

4.Folder 也有 classes.jar 文件,该文件将包含库中的所有类。

5.要打开 classes.jar 文件,请使用jd-gui tool

6.在jd-gui工具文件->打开文件->浏览并选择classes.jar文件。

晚了,但会帮助新观众。

【讨论】:

  • @MaňishYadav 先试一试,伙计。如果您遇到任何问题,让我们尝试找到合适的解决方案。对于你的怀疑,我没有答案。
  • OP 已经提到他可以取出.class 文件。她想要 JNI 代码(C++ 代码)。
  • 第1步可以跳过。
【解决方案2】:

在 android studio 中,打开 Project Files 视图。

找到 .aar 文件并双击,从弹出的“打开方式”列表中选择“arhcive”。这将在 android studio 中打开一个窗口,其中包含所有文件,包括类、清单等。

【讨论】:

  • 我希望这会发生,而且我认为它实际上发生在过去,现在使用 AS 3.4.1,它说没有与该 .aar 文件关联的应用程序并提示我选择一个打开它...我讨厌这些东西...
  • @FranMarzoa 从列表中选择“存档”。
  • 就我而言,我需要先安装这个插件:plugins.jetbrains.com/plugin/…
  • 我必须从项目视图中双击 AAR,然后它就可以让我浏览里面的源代码了。它还可以让我将 AAR 与另一个 AAR 文件进行比较。
【解决方案3】:

.aar 文件是 zip 格式,但它只包含模块的编译代码。如果您的 .aar 包含 JNI,它将采用共享库的形式。只要您可以保持不变,您就可以将其用作预构建的共享库。你不能像 .class 文件那样容易地反编译它。

【讨论】:

    【解决方案4】:

    只需两步:

    1. 将库文件扩展名重命名为“.jar”,如:lib.jar

    2. 用Winrar、Winzip等解压文件夹中的文件

    【讨论】:

      【解决方案5】:

      只需打开preferences,在搜索栏中搜索plugins 并搜索Android Bundle Support 插件。您需要安装此插件才能打开 .aar 和 .jar 文件。 https://plugins.jetbrains.com/plugin/10310-android-bundle-support/

      【讨论】:

      • 安装 Android Bundle Support 后如何打开 .aar 文件?请您解释一下步骤?
      猜你喜欢
      • 2011-07-03
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-21
      相关资源
      最近更新 更多