NSTaggedPointerString 取不到值

不知道为什么
在使用LLDB调试抖音应用时,可参考以下通用的思路和步骤: ### 1. 准备工作 在iOS平台上,如果要调试从App Store获的抖音应用,需要对iOS设备上的debugserver进行处理。首先要找到iOS设备中debugserver,并将其拷贝到Mac上进行处理。debugserver位于/Developer/usr/bin目录下,此debugserver默认只支持调试自己的App,若要调试抖音这类他人的App,需要对此debugserver进行处理,处理过程需进一步深入研究和操作。 ```bash iPhone:~ root# cd / iPhone:/ root# ls Applications/ Documents* System/ bin/ cores/ etc@ mnt/ sbin/ usr/ Developer/ Library/ User@ boot/ dev/ lib/ private/ tmp@ var@ iPhone:/ root# cd Developer/usr/bin iPhone:/Developer/usr/bin root# ls DTDeviceArbitration* ScreenShotr* XcodeDeviceMonitor* axauditd* debugserver* iprofiler* xctest* ``` ### 2. 安卓平台调试步骤 在安卓平台上,可按以下步骤进行操作: - 使用`adb push`命令将lldb - server推送到安卓设备的指定目录: ```bash adb push lldb-server /data/local/tmp ``` - 启动lldb - server并监听指定的socket: ```bash ./lldb-server p --server --listen unix-abstract:///data/local/tmp/debug.sock ``` - 新开窗口进行权限相关操作,确保SELinux处于Permissive模式: ```bash adb shell su getenforce # 如果不为Permissive则执行 setenforce 0 ``` - 选择远程安卓平台并连接: ```bash lldb platform select remote-android platform connect unix-abstract-connect:///data/local/tmp/debug.sock ``` ### 3. LLDB基本调试操作 LLDB有一些基本的调试操作指令,例如`expression`(简写为`e`)可执行一个表达式动态修改当前线程堆栈变量的,`po`的作用为打印对象,`po`命令会尝试调用对象的`description`方法来得对象信息。在调试抖音应用时,可根据实际情况使用这些指令来查看变量、修改变量等操作。 ``` // 执行一个表达式 (lldb) e a (__NSCFConstantString *) $0 = 0x000000010183c090 @"apple" // 动态的修改变量的 (lldb) e c = @"change_C" (NSTaggedPointerString *) $2 = 0xb753a84c25bc65ea @"change_C" ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值