如何使用lldb在iOS模拟器中调用类方法?

我正在尝试debugging一个iOS应用程序,并且在模拟器中遇到了lldb问题。 调用类方法似乎不起作用。 实例方法工作正常。

(lldb) po Category <no result> (lldb) po [Category class] error: Couldn't prepare the expression for execution in the target (lldb) po self (TagsTableViewController *) $5 = 0x085585a0 <TagsTableViewController: 0x85585a0> 

我已经尝试了4.3和5.1模拟器,但都显示相同的问题。

在设备上进行debugging时,一切正常。

这工作。 感谢@devioustree回答了上面的评论。

基本命令的结构如下所示:

 po [(Class)objc_getClass("ClassName") class] 

调用someClassMethodHere

 po [[(Class)objc_getClass("ClassName") class] someClassMethodHere] 

添加这个来扩大接受的答案…

如果你正在尝试给lldb中的一个variables赋一个新的值,而不是像打印出这个值那么做一些像这样的事情…

 expr self.myArray = (NSArray*)[[(Class)objc_getClass("NSArray") class] arrayWithObjects:@"valueOne",@"valueTwo",@"etc",nil]