Расширения отладочных уведомлений

Я создаю набор расширений уведомлений (сервис / контент). Я не могу подключиться к отладчику XCode или даже выйти из журнала устройства или консоли.

Есть ли способ увидеть какой-либо вид продукции?

Ответы на вопрос(6)

будет ли это полезно, но у нас есть несколько сборок одного приложения (альфа, бета и т. Д.). При попытке отладки получено сообщение об ошибке «У вас нет прав доступа». Открыв список процессов, я заметил, что там были названы 2 процессаnotification-extension поэтому xcode должен был по умолчанию соответствовать одной из других сборок. Путем ручного выбора правильного или удаления других сборок из моего телефона все снова заработало.

 Neal.Marlin05 сент. 2018 г., 04:44
Привет джош Не могли бы вы сказать мне, какОткрытие списка процессовЯ просто не знаю, как контролировать процессы, запущенные на моем телефоне.

Это помогло мне остановиться на точках останова в расширении и посмотреть журнал расширений:

Выберите схему расширения уведомлений, а не основную схему приложения.Запустите приложение и выберите главное приложение из спискаChoose an app to runОстановите приложение в Xcodeа также прекратить его вручную на устройстве; не прекращение вручную приводит кMessage from debugger: Terminated due to signal 9 после шага 6. [Обновить: Завершение приложения вручную на устройстве не является необходимым, попробуйте любой способ, если он не работает.]Выберите МенюDebug > Attach to Process by PID or NameВведитеправильное имя расширения, а не основное имя приложенияОтправьте push-уведомление
 Neal.Marlin05 сент. 2018 г., 04:32
Привет, Мануэль, я следовал твоему руководству, но у меня все еще есть этоMessage from debugger: Terminated due to signal 9 ошибка. И я уверен, что я вручную закрыл свое основное приложение. У вас есть идеи по этому поводу? Может ли это повлиять на фоновое обновление? основной процесс приложения еще жив?
 Neal.Marlin12 дек. 2018 г., 01:52
Наконец, я обнаружил, что с конфигурацией моего проекта что-то не так. После того, как я переключаюсь на другую цель, у моего проекта есть три цели с различной конфигурацией, и это работает.
 Manuel09 сент. 2018 г., 23:18
@ Neal.Marlin Не вижу причин, по которым это может повлиять на фоновое обновление. На этом этапе я бы посоветовал вам немного поэкспериментировать с порядком шагов в моем ответе. Кажется, это работает для всех немного по-другому, может быть, никто до сих пор не определился с правильными шагами, которые работают для всех.
 Manuel09 дек. 2018 г., 22:35
@ Neal.Marlin Посмотрите мое обновление для шага 3: постарайтесь не завершать приложение вручную на устройстве, оно просто работает для меня, может быть, оно работает для вас.

ашего приложения, а является расширением, в котором говорится, что оно имеет идентификатор процесса (PID), отличный от вашего приложения. Вы можете заставить XCode прослушивать каждый процесс на вашем телефоне, перейдя на вкладку «Отладка», прокрутите вниз до «Присоединить к процессу» и посмотрите, есть ли ваш NSE в списке «Вероятные цели». Если его там нет, попробуйте добавить еще одно push-уведомление на ваше устройство и прикрепить к нему, когда оно появится.

Теперь в отладочном навигаторе вы можете видеть процесс NES и можете успешно отлаживать его.

вное, что вам нужно отправить push один раз, затем подключиться через отладчик, а затем отправить push для отладки. Итак, полный список:

Запустить приложение (не расширение).

Остановить приложение из XCode.

Отправить один толчок.

Подключитесь через «Присоединить к процессу с помощью PID или имени ...» к процессу расширения.

Отправить еще один толчок.

Я получаю ошибку ниже в консоли

Program ended with exit code: 0

Затем после поиска в Google я проверилэтот ответ, однако это также не работало для меня какое-то время!

Затем я повторил те же действия, что и в ответе, после остановки текущего запущенного приложения. затем выполните те же шаги. Для ясности я пишу эти шаги, как показано ниже:

После запуска приложения, которое содержит расширение,

1) Set your breakpoint in the extension
2) Select Debug / Attach to Process by PID or name
3) Enter the name of the extension target
4) Trigger the push notification

Перед шагом 2 обязательно остановите текущее работающее приложение.

 Bucket12 янв. 2018 г., 15:00
в моем случае завершение этой Программы с кодом выхода: 0 2) Выберите Отладка / Присоединить к процессу по PID или имени: не ясно, этот шаг, пожалуйста, объясните?
 Kendall Helmstetter Gelner23 февр. 2018 г., 17:12
Самое забавное в моем случае, я сначала попробовал этот подход (прикрепить по имени), и я только что получил сообщение об ошибке, в котором говорится, что у моего пользователя нет разрешения на присоединение к процессу расширения. Выбор цели для запуска расширения работал ... так что, если у людей есть проблемы, попробуйте оба варианта.
 Saurabh Prajapati30 янв. 2018 г., 15:12
@Bucket Нажмите «Отладка» в верхнем меню -> затем присоедините к процессу, затем выполните шаг 2,3,4.
 bauerMusic17 мая 2018 г., 10:10
Работал несколько раз, после чего я получаю «Завершено из-за сигнала 9» ...
Решение Вопроса

затем выберите «Выполнить» и выберите свое приложение в окне «Выберите приложение для запуска:».

 Manuel04 июн. 2018 г., 01:03
У меня не получилось, посмотри мой ответ.
 Saurabh Prajapati14 нояб. 2017 г., 06:18
@brenden: я получаю "Программа завершилась с кодом выхода: 0"
 fvisticot08 окт. 2016 г., 10:29
работает отлично !! Техас
 Kendall Helmstetter Gelner23 февр. 2018 г., 17:11
Это также работало для меня с расширением FileProvider, которое выбирало приложение «Файлы», хотя мне пришлось на самом деле указать поставщика файлов в «Файлах», прежде чем началась отладка.

Ваш ответ на вопрос