Як приєднати налагоджувач до програми iOS після запуску?


101

У мене є проблема, з якої я усуваю проблеми, які трапляються дуже рідко і, здається, не трапляються, коли у мене речі працюють під Xcode.

Чи можливо запустити додаток нормально (тобто з Springboard) до моєї проблеми, а потім приєднати налагоджувач у цій точці?

Я вважаю за краще зробити це без можливого втечі від в'язниці, якщо це можливо.

Відповіді:


124
  • Приєднайте ваш пристрій, який підключив ваш Mac
  • Налагодження> Приєднати до обробки за допомогою PID або Імені
  • На діалоговому аркуші введіть назву програми, як вона з’являється в навігаторі налагодження при запуску через Xcode.

Якщо програма вже запущена, налагоджувач буде приєднаний до запущеного процесу. Якщо він не працює, він буде чекати запуску програми, а потім додається.


Оле, дякую за відповідь. Я шукав спосіб це зробити. Коли я йду приєднувати налагоджувач, виглядає, що він додається, але тоді я отримую це повідомлення: попередження: Не вдається прочитати символи для / var / mobile / Applications / {GUID} / {APPNAME} .app / {APPNAME} (файл не знайдено). Коли я натискаю кнопку "стоп" у XCode, додаток припиняється. Схоже, він не знаходить налагоджувальні символи, хоча він будується в режимі налагодження. Якісь ідеї?
Брайан

4
У мене проблема з програмою " Якщо вона не працює", вона зачекає, коли програма запуститься, а потім приєднається. частина. Це не працює. Я використовую ім'я процесу, щоб чекати, коли додаток зателефонує. Я запускаю додаток на iPhone, але налагоджувач ніколи не розуміє, що програма почалася.
Джоні

1
@BrianV - вам потрібно переконатися, що ви компілюєте з -ggdb, якщо ви хочете мати можливість приєднатися до процесу.
itfische

4
Я згоден з Джоні; мій досвід полягає в тому, що вкладка працює на тренажері, але не приєднується до фактичного пристрою.
Джеймс Мур

4
Примітка: В Xcode 5.0.1+ це Debug > Attach to Process > By Process Identifier (PID) or Name stackoverflow.com/a/20193088/175830
Джейсон Акселсон

117

Я залишу це тут, оскільки жоден з інших 2 відповідей не дав мені достатньо детальних даних, без трохи боротьби.

  1. Запустіть свою програму в тренажері та відзначте її ім'я в навігаторі налагодження введіть тут опис зображення

  2. Підключіть свій пристрій і не забудьте вибрати свій пристрій як ціль введіть тут опис зображення

  3. Налагодження> Приєднати до процесу> За ідентифікатором процесу (PID) або Іменем введіть тут опис зображення
  4. Введіть ім’я з кроку 1 і додайте. Це повинно бути все, що вам потрібно зробити. введіть тут опис зображення

8
У вас повинно бути 1000 грошей. Налагодження речей, які починаються за допомогою схеми url cutom, може бути болем у дупі без цього акуратного фокусу. Велике дякую!
txulu

2
Я хотів би, щоб я бачив цю відповідь, перш ніж я витратив 20 хвилин, щоб зрозуміти це самостійно :(
simon_smiley,

7
Це працює в тому, що він приєднується до процесу, але я не бачу отримати жодного результату журналу, який саме мені справді потрібен. Якісь ідеї?
Орландо

2
@Orlando - Якщо ви шукаєте вихід журналу, настійно рекомендую DeviceConsole: github.com/rpetrich/deviceconsole
orion elenzil

1
Я зробив саме так, як ви запропонували. і я отримую помилку: Could not attach to PIDя спробував і ім’я, і його ідентифікатор. Я спробував, поки програма працює, і поки вона зупинена ..
Мед

49

У Xcode 5.0.1 і 6 це пункти рядка меню:

Debug > Attach to Process > By Process Identifier (PID) or Name...

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.