我正在尝试对应用程序的 API 进行逆向工程。我已经完成了在 root Android 模拟器上使用 Charles 和 HTTP Toolkit 证书解密流量的所有操作。然而,Charles 和 HTTP Toolkit 都显示出异常少量的请求。所有这些都已解密,并且没有显示未知流量,但我收到的唯一请求是媒体请求(主要是视频缩略图)、一个 AB 配置请求,然后是一些 Facebook 和 Firebase 集成请求,仅此而已。似乎应用程序没有通过向服务器发出 http 请求来获取 UI 数据。它可能使用 gRPC,但 Charles 支持 HTTP/2,即使不支持,我也尝试了针对 gRPC 调用的 Mediator,但一无所获。我不是 Android 开发人员,所以我不太了解 Android 上的 UI 渲染,应用程序没有传入数据会是什么?
最合理的解释是 UI 组件及其逻辑已经在应用程序中编写并可用。然后,应用程序中的活动(编写 UI 逻辑的 Android 组件)根据从各种来源获取的数据加载视图(具有行为的 UI 组件)。
如果您可以对代码进行反混淆,请尝试检查任何 UI 逻辑的活动。
另一种可能性是使用服务器驱动的 UI 框架,一些示例框架是 Epoxy、Lithos、RIB(更多的是架构/框架)。
我希望这些信息有帮助!