如何提取不工作的.apk文件的代码?

39 浏览
0 Comments

如何提取不工作的.apk文件的代码?

这个问题已经有答案了:

有没有办法从APK文件中获取源代码?

实际上,我正在尝试提取名为cloudfilz.apk的.apk文件的代码,并希望在其源代码中进行操作,因此我按照以下步骤进行:

创建一个新文件夹并将.apk文件(要解码的文件)放入其中,现在将此.apk文件重命名为扩展名.zip(例如:从filename.apk重命名为filename.apk.zip),并将其保存...现在您可以获得classes.dex文件等……在此阶段您可以看到可绘制但不能查看XML和Java文件……因此请继续...

第2步:

现在在同一个文件夹(在此示例或情况下为新文件夹)中提取此zip apk文件。现在从此链接http://code.google.com/p/dex2jar/下载dex2jar并将其提取到相同的文件夹中(在此示例中为NEW FOLDER).....现在打开命令提示符并进入该文件夹(在此示例中为NEW FOLDER)......达到后,写“dex2jar classes.dex”并按Enter键......现在您将在相同的文件夹中获得classes.dex.dex2jar文件......

=>问题: - 我已成功完成步骤1,但在步骤2中,当我执行dex2jar classes.dex时,在命令提示符上出现错误java.lang.UnsupportedClassVersionError,我知道这是因为我安装的JDK版本与classes.dex JDK版本号之间不兼容,所以我被卡住了,没有出路......

admin 更改状态以发布 2023年5月24日
0
0 Comments

来自市场或未签名的任何.apk文件

  1. 如果您的apk是从市场下载的并且已签名,请从市场安装Astro文件管理器。 打开Astro>工具>应用程序管理器/备份,选择要备份到SD卡的应用程序。
    将手机挂载为USB驱动器并访问“ backupsapps”文件夹以找到目标应用程序的apk文件(我们称其为app.apk)。将其复制到本地驱动器中,未签名的.apk也是如此。

  2. 从此链接下载Dex2Jar zip:SourceForge

  3. 解压下载的zip文件。

  4. 打开命令提示符,然后在到达dex2jar exe所在的目录并将apk复制到同一目录中后,写下以下命令。

    dex2jar targetapp.apk file(在终端上执行./dex2jar app.apk)

  5. 从此链接下载反编译器:http://jd.benow.ca/

  6. 使用jd-gui打开“targetapp.apk.dex2jar.jar”
    文件>保存所有源以将类文件保存在jar中转为Java文件。

0
0 Comments
  1. Download apktool, and extract it in a folder (let's say, apktool).
  2. Copy the APK file you want to decompile to that folder.
  3. Open command prompt and change your current directory to the folder created in the previous point.
  4. Type the command apktool d -s -o output_folder_name apk_file_name.apk and press enter. This will generate a folder named output_folder_name containing all the extracted files of the application.
  • macOS:

    1. Download Homebrew. It is a package manager for macOS.
    2. Open Terminal (located in /Applications/Utilities/Terminal.app) and type the command:
    3. /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install.sh)"
    4. Press Enter. The installation will begin.
    5. Once the installation finishes, type the command:
    6. brew install apktool
    7. Copy the APK file you want to decompile to a directory.
    8. Open Terminal and type the command apktool d -s -o output_folder_name apk_file_name.apk and press enter. This will generate a folder named output_folder_name containing all the extracted files of the application.
  • Linux:

    1. Open Terminal.
    2. Type the command sudo apt-get install apktool and press enter. This will install apktool.
    3. Copy the APK file you want to decompile to a directory.
    4. Open the terminal and type the command apktool d -s -o output_folder_name apk_file_name.apk and press enter. This will generate a folder named output_folder_name containing all the extracted files of the application.
    1. 下载包装脚本(可选)apktool jar(必需)并将其放置在同一个文件夹中(例如myxmlfolder)。
    2. 将当前目录更改为myxmlfolder文件夹,并将apktool jar文件重命名为apktool.jar
    3. .apk文件放置在同一个文件夹中(即myxmlfolder)中。
    4. 打开命令提示符(或终端),并将当前目录更改为存储apktool的文件夹中(在本例中为myxmlfolder)。接下来,键入命令apktool if framework-res.apk

      我们在这里的做法是安装一个框架。有关更多信息,请参见文档

    5. 上述命令应该会显示“Framework installed ...”。
    6. 在命令提示符中,键入命令apktool d filename.apk (其中filename是apk文件的名称)。这应该会对文件进行解码。有关更多信息,请参见文档

      这应该会输出一个名为filename.out的文件夹,其中filename是apk文件的原始名称,不带.apk文件扩展名。在这个文件夹中有所有的XML文件,如布局、可绘制等。

    来源:从APK文件中获取源代码的方法 - Comptech Blogspot

    0