android - 有没有办法在没有源代码的情况下替换 APK 中的库

标签 android reverse-engineering okhttp apktool

我正在研究一些 http 库,我必须修改一些库。研究的一部分是在闭源应用程序上测试它,所以我想知道是否有一种方法可以在没有应用程序源代码的情况下替换 APK 应用程序内的库。 例如,某些应用程序使用 Okhttp3 库作为 http 客户端。我通过下载 Okhttp3 的源代码并将其编译为 jar 文件对 Okhttp3 进行了一些修改。 现在我想知道是否可以使闭源应用程序的 APK 使用我修改后的 Okhttp3 版本,而不是应用程序 APK 中包含的官方 okhttp3。

最佳答案

一个棘手的问题。但我使用 APK studio 完成了类似的任务。

APK studio 将 java 类反编译为 .smali 文件。

您应该首先构建一个使用新库的 apk,然后使用 APK studio 反编译它。复制library文件夹并替换到原来的apk中。之后,如果运气好的话,您将能够从 APK studio 构建 apk。

关于android - 有没有办法在没有源代码的情况下替换 APK 中的库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46751053/

相关文章:

android - 使用摘要式 HTTP 身份验证 : “Cannot retry streamed HTTP body” 改造 POST 请求

android - OkHttp 拦截器不断返回 null 并使应用程序崩溃

c++ - 反调试器技术 : How to hide a thread from the debugger using VB. NET?

java - Android 端口无法工作

android - LocationManager 禁用 NETWORK_PROVIDER

java - Android - 解析 RSS 提要时出现 UnknownHost 异常

android - 在android中编辑framework.jar

mysql - 使用mysql工作台从表生成mysql中的整个脚本?

java - 基于Java的B2B客户端/服务器服务中的Okhttp(高并发)

java - 无法从 Android Leanback 应用程序中的 VideoDetailsFragment 访问 getPackageManager GetActivityInfo