【问题标题】:Decompile APK, modify an activity and recompile to APK反编译APK,修改一个activity并重新编译成APK
【发布时间】:2017-12-05 08:39:18
【问题描述】:

我正在尝试做一些简单的事情。我有一个 APK 文件,我想在某个活动中更改某个变量值,然后将其重新编译回 APK,以便我可以在我的 Android 设备上使用它。

自从我开始使用它已经好几天了,我找不到任何解决方案。

我尝试了这些方法:

  1. 使用 APKtool 反编译。
  2. 用 Android studio 打开它。
  3. 更改所需的值。
  4. 无法将其重新编译为 APK。

  1. 使用 APKtool 反编译 / 使用 7-Zip 打开 APK。
  2. 使用 dex2jar 将classes.dex 转换为 jar。
  3. 使用 luyten 或 jadx 打开 jar 文件(jd-gui 出现“内部错误”)。
  4. 无法编辑文件。

在另一种方法上,我不记得我是如何做到的,我能够访问活动文件,但无法再次将其重新编译为 APK

如果您对如何编辑classes 和活动有任何想法,请告诉我。我已经阅读了很多 SO 问题并在 Google 上搜索了很多次,但我找不到任何解决方案。谢谢!

【问题讨论】:

    标签: java android eclipse apk dex2jar


    【解决方案1】:

    使用 Android apk 工具,您只能反编译现有的 APK。你不能重新编译它。会报错

    如果您打算将 dex 文件转换为 JAR 文件和将 JAR 文件转换为 dex 文件,这在大多数情况下也是行不通的。

    但有一种解决方案可用..“DexPatcher”。我试过这个,但由于缺乏知识而陷入困境......你可以试试“Dexpatcher tool”,它会很好。如果你有任何想法,请告诉我..

    祝你有美好的一天

    【解决方案2】:

    我建议你使用APK Studio。您可以使用它反编译/重新编译 apk。但是,您不能在 Java 中编辑源代码。它使用称为smali 的语言进行反编译。如果您只需要更改一个值,我想这个工具可以解决您的问题。

    【讨论】:

    • 该工具带有文本编辑器。您只需查找变量并编辑其值。
    • 看起来反编译的代码是二进制什么的,我真的找不到像我在 Android Studio 上看到的可读的类代码。我找到了变量名,但没有找到它的值。
    • 抱歉没用。
    【解决方案3】:

    使用 apk 编辑器。

    Apk-editor 是 android 中的应用程序 那就是反编译再编译apk

    apkeditor

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-09-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-07-25
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多