Android Studio导入问题。(Apktool)

PSM*_*PSM 1 import android apk apktool

我一直试图将文件导入到我使用apktool反编译的android studio中。但是,当我尝试将文件导入Android Studio时,“项目”浏览器上没有显示任何内容。在导入过程中,第一步,我选择了“从现有资源创建项目”。反正有解决此问题的方法吗?另外,是否有在Android Studio中使用记事本++中的文件?

谢谢。

Lon*_*ger 5

正如Daniel Souza回答的那样,apktool只是一个帮助您提取类和清单的工具。如果您仔细研究Android构建过程的细节和流程(https://source.android.com/source/jack.html),您将知道每个类都会被混淆,打包并放入.dex文件中。 (包括您自己的类,android支持库和其他3方库)。

通常,.apk文件仅包括以下类型的文件。

  1. .dex文件(如果存在65K方法问题,它可能不仅是一个)
  2. 清单(Android权限和功能元数据)
  3. 资产(可绘制,资产文件夹,布局和R)

因此,当您使用apktools和其他一些工具(j-soup)进行反向工程时。您只能拥有源文件。作为Daniel方法,您可以将项目导入android studio,但是项目中可能存在许多错误。

  1. 无法生成R.java(因为所有自定义ID值都将在apk中转换为一个无整数,因此即使您使用apktool也无法将其反转为人类可读的含义)

  2. 混淆的类和变量名。正如我提到的如何构建apk的过程,构建后将混淆类和变量名。逆向工程将很难发现应用程序内部的逻辑,因为几乎所有名称都被重命名为(a,b,c,d,e ...)

  3. Proguard问题,某些应用程序可能会使用更先进的技术通过更复杂的逻辑流程来编译源代码(如Dexguard所做的那样)。完成逆向工程后,在应用程序中查找内部逻辑将更加困难。

如果它是“简单”应用程序,则您可能能够找出混淆代码中发生的情况。

如果它是包含许多库的“复杂”应用程序,那么如果您试图挖掘其中的逻辑,那将是灾难。