MonkeyDev 的 RESTORE_SYMBOL 失效


#1

在 Build Setting 中把 MONKEYDEV_RESTORE_SYMBOL 设置为了 YES,但是程序在运行起来时发现不能正确还原符号。
表现是:

  1. 堆栈信息中大量的 ___lldb_unnamed_symbol379352$$ 但是 $x2 可以拿到方法名。

我试过了:

  1. 重新砸壳 App
  2. 更新到 MonkeyDev 为最新版
  3. /opt/MonkeyDev/bin中的 class-dump 二进制文件换成了最新版。
  4. Clean 整个项目,且删除了 Build 文件。
    以上都不能解决问题。

应该如何下手解决这个问题?

项目有点大,需要的话再上传上来。


#2

Yet another ByteDance question.

  1. 只传核心二进制就行了
  2. 我不确定md具体是怎么处理这块的,如果实现在主程序之外的话有可能md并没有对相应的动态库跑restore,建议看一下实现在哪个二进制里
  3. 请回报2的测试情况

#3

make install
==> Installing…
请问为什么一直这个状态呢?


#4

旧版本应是基于 (https://github.com/tobefuturer/restore-symbol)[https://github.com/tobefuturer/restore-symbol],但可能新版庆总自行修改编译了。


#5

解决问题了:
我想应该是 MonkeyDev 的 restore symbol 模块有问题。
我使用最新的 restore symbol(同时更新了内置的 class-dump)后,就能正确还原了。


#6

使用monkeyDev包装Snapchat的包,登录时网络请求失败,有遇到的吗?有进一步处理的方法吗?