Я наконец нашел относительно простой (хотя и не совсем элегантный) способ сделать это.
Во время отладки на iPhone я установил точку останова для objc_msgSend. Затем я набрал этот простой скрипт GDB:
while 1
printf "[%s %s]", (char *)object_getClassName($r0), (char *) $r1
c
end
Это распечатывает каждый вызов метода. Он не идеален, потому что он печатает имя класса объекта, которому отправляется сообщение, а не сам объект, но работает для того, что мне нужно.
Обратите внимание, что это будет работать только на самом iPhone.