Не удалось запустить виджет главного экрана в iOS 14 Simulator
Детали ошибки:
SendProcessControlEvent:toPid: обнаружена ошибка: Error Domain=com.apple.dt.deviceprocesscontrolservice Code=8 "Не удалось показать ошибку Widget 'com.anupam.iOS14Feature.widgetExtension': Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=2 " Укажите тип виджета в переменных среды схемы, используя ключ '_XCWidgetKind', который должен быть одним из: 'BillPayCheckerWidget', 'CommitCheckerWidget'" UserInfo={NSLocalizedDescription= Пожалуйста, укажите тип виджета в переменных среды схемы, используя ключ '_XCWidgetKind', чтобы он был одним из: BillPayCheckerWidget, CommitCheckerWidget}. UserInfo={NSLocalizedDescription= Не удалось показать ошибку виджета com.anupam.iOS14Feature.widgetExtension:ErrorDomain=SBAvocadoDebuggingControllerErrorDomain Code=2 "Пожалуйста, укажите тип виджета в переменных среды схемы, используя ключ '_XCWidgetKind', который должен быть одним из: 'BillPayCheckerWidget', 'CommitCheckerWidget'" UserInfo={NSLocalizedDescription= Укажите вид виджета в схеме Переменные среды, использующие ключ '_XCWidgetKind', должны быть одним из: 'BillPayCheckerWidget', 'CommitCheckerWidget'}., NSUnderlyingError=0x7fc70d618350 {Error Domain=SBAvocadoDebuggingControllerErrorDomain Code=2 "Пожалуйста, укажите тип виджета виджета _index_Index_Code_Vidget_Vidgets 'быть одним из:' BillPayCheckerWidget ',' CommitCheckerWidget '"UserInfo={NSLocalizedDescription= Пожалуйста, укажите тип виджета в схеме"s Переменные среды, использующие ключ '_XCWidgetKind' в качестве одного из: 'BillPayCheckerWidget', 'CommitCheckerWidget'}}} Домен: DTXMessage Код: 1 -
Системная информация
macOS версии 10.15.6 (сборка 19G73) Xcode 12.0 (17200.1)
4 ответа
Вероятно , потому что вы изменили строку вида внутри своей структуры:widget. Перейдите к редактированию схемы и в аргументах измените имя _XCWidgetKind на одно из ваших новых имен типа. Буквально только что загрузил это исправление в свой симулятор, когда набирал это lol.
Если у вас несколько виджетов, в моем случае у меня есть два виджета.
- Виджет статической конфигурации
- Виджет настройки намерений
И, когда вы запускаете цель расширения виджета, вам нужно указать, какой виджет вы хотите запустить.
Продукт -> Схема -> Изменить схему
- включить
_XCWidgetKind
и укажите имя структуры виджета [в моем случае "Selectable_OTP_Extn"] - включить
XCWidgetDefaultView
&_XCWidgetFamily
Я пробовал другие ответы, но для нескольких виджетов (т.е.
WidgetBundle
) мне помог только этот ответ: /questions/50542602/ne-udalos-poluchit-deskriptoryi-dlya-extensionbundleid/56493779#56493779 (прокомментируйте другие виджеты и оставьте только 1 виджет без комментариев).
Если в вашем приложении много разных виджетов, вам нужно указать Xcode, какой из них вы собираетесь отлаживать, вы не можете отлаживать их все одновременно, для этого и нужен _XCWidgetKind, поэтому добавьте имя класса вашего виджета. работает.