У меня проблема с памятью в iPhone-приложении, которое я бы хотел отлаживать с помощью MallocStackLogging
. Ошибка связана с гироскопом, поэтому я должен отлаживать устройство, а не симулятор.
Я установил переменную среды MallocStackLogging
, и iPhone правильно записывает журналы стека mallock:
MyApp(1856) malloc: recording malloc stacks to disk using standard recorder
MyApp(1856) malloc: stack logs being written into /private/var/mobile/Applications/1FD1F8D2-5D30-4AA7-B426-C52FE20266DE/tmp/stack-logs.1856.MyApp.index
MyApp(1856) malloc: Please issue: cp /private/var/mobile/Applications/1FD1F8D2-5D30-4AA7- B426-C52FE20266DE/tmp/stack-logs.1856.MyApp.e8z3IL.link /tmp/
Теперь, как я могу работать с ними?
Я могу перенести их на Mac с помощью Xcode Organizer. Но что мне делать с этими двумя файлами?
- стек logs.1856.MyApp.index
- stack-logs.1856.MyApp.e8z3IL.link
Я попытался переместить файлы в /tmp на Mac и вызвал:
$ malloc_history 1856 -all_events
malloc_history cannot examine process 1856 because the process does not exist.
Очевидно, что команда malloc_history
ищет запущенные процессы на локальной машине. Я не могу указать файл журнала вручную.
Есть ли способ заставить это работать либо напрямую работать с Xcode на (не-jailbroken) устройстве, либо после переноса журналов на Mac?