"Не удается просмотреть в этом файле - не удалось запустить [Имя приложения]"
Я пытаюсь поиграться с swiftUI в Xcode 11 и macOS Catalina. НО После создания нового Проекта есть код котельной плиты с текстом, который говорит привет мир. Я хочу иметь предварительный просмотр этого простого приветственного сообщения на холсте рядом с кодом.
Когда я нажимаю кнопку возобновления: он говорит:
Не удается просмотреть в этом файле - Не удалось запустить [Имя приложения]
Я попытался нажать кнопку диагностики, сгенерировавшую отчет, чтобы отправить его в APPLE:
[FailedToLaunchError (url: file: ///Users/naive/Library/Developer/Xcode/DerivedData/first_swiftUI-dymizjogcbtouhclgjhhefagmcqo/Build/Intermediates.noindex/Previewsw/app_Imp_Imp_Imp_IxtI_I себе_) =NSOSStatusErrorDomain Code=-10661 "(null)" UserInfo={_LSLine=3554, _LSFunction=_LSOpenStuffCallLocal}, faultCategory: UVFoundation.FailureCategory.infrastructureFailure) ]
Вот код, это код по умолчанию, который поставляется с новым проектом, созданным с проверенной опцией Xcode 11 и SwiftUI:
import SwiftUI
struct ContentView : View {
var body: some View {
Text("Hello World")
}
}
#if DEBUG
struct ContentView_Previews : PreviewProvider {
static var previews: some View {
ContentView()
}
}
#endif
Я ожидаю, что холст будет отображаться и отображать предварительный просмотр моего кода. Холст не появляется!!
Сгенерировано два предупреждающих сообщения:
:0: предупреждение: импортированное объявление "UITableViewDiffableDataSourceCellProvider" не может быть сопоставлено с "UITableViewDiffableDataSourceReference.CellProvider"
:0: предупреждение: импортированное объявление "UICollectionViewDiffableDataSourceCellProvider" не может быть сопоставлено с "UICollectionViewDiffableDataSourceReference.CellProvider"
кроме этого, приложение "Мой iPad 11" с бета-версией iPadOS запускает приложение. Также работает симулятор.
15 ответов
Я сталкивался с этим UVFoundation.FailureCategory.infrastructureFailure
при запуске приложения iOS с SwiftUI и последующей проверке цели Mac в свойствах проекта (т. е. с использованием Catalyst для создания кроссплатформенного приложения). Когда я сделал это, устройство по умолчанию изменилось на "Мой Mac", и предварительный просмотр перестал работать, что привело к появлению этой ошибки в окне диагностики.
Предполагается, что предварительный просмотр цели Mac не поддерживается - вам нужно выбрать какую-нибудь цель iOS ("Универсальное устройство iOS" прекрасно работает для меня). Протестировано на Mojave beta 5 с Xcode 11 beta 5. Из заметок о выпуске Xcode 11 beta 5: "Xcode 11 не поддерживает работу с SwiftUI в приложении Mac Catalyst. (41416222, 51201699)"
"Мой Mac" выбран, он не работает!
Я исправил это, назначив инструменты командной строки для xcode 11, он был установлен на предыдущую версию xcode 10.
Перейдите: " Настройки"> "Расположение"> "Инструменты командной строки" [выпадающий список] > выберите Xcode 11
Проверить диагностические отчеты на пути ~/Library/Logs/DiagnosticReports
.
Откройте файл fileName.crash (fileName
это файл, вызывающий сбой) и выполните поиск Application Specific Information
Исправьте свой код в соответствии с информацией
Я просто выхожу из XCode и снова открываюсь с тем же проектом, и он начинает предварительный просмотр. Попробуй один раз.
По-прежнему не повезло. Command +K (очистить проект), коснутьсяResume
еще раз.
У меня была эта проблема (Cannot preview in this file -- Update failed
) на Catalina 10.15.5 с Xcode 11.5 при попытке предварительного просмотра цели Canvas для MacOS с ванильным шаблоном проекта SwiftUI после применения cocoapods и предложений Xcode.
Ни одно из уже перечисленных решений у меня не помогло.
Получил подсказку в системе "Диагностика" "... code signature in (.../Data/ContentView.2.preview-thunk.dylib) not valid for use in process using Library Validation: mapped file has no Team ID and is not a platform binary (signed with custom identity or adhoc?))} ..."
Это решило проблему: Project> TARGETS> MacOSTarget> Signing Certificate> Development
(Раньше было "Локальный доступ к подписке")
Если вы нажмете на название своего проекта справа от кнопки запуска/воспроизведения, вы сможете переключиться на параметры iOS . Изначально установлено значение macOS.
У меня была та же проблема, и мне помогло изменение местоположения. Я изменил его с «Относительно группы» на «Относительно проекта», и появился предварительный просмотр!
По этой ссылке вы можете найти больше информации
Для меня выберите что-нибудь, кроме 11 Pro max, и он будет работать.
Если вы получаете сообщение об ошибке «Невозможно выполнить предварительный просмотр в этом файле».
Сначала попробуйте это:
закрыть окно xcode
Щелкните правой кнопкой мыши значок и выберите «Выход».
Повторно откройте, и проблема будет в основном исправлена.
Это работает для большинства проблем в xcode, прежде чем пытаться что-либо еще, попробуйте закрыть окно, принудительно выйти, а затем снова открыть проект.
Откройте терминал и введите следующую команду
sudo xcode-select -s /Applications/Xcode-beta.app/Contents/Developer
а потом беги sudo xcodebuild -license
, Тип согласен и нажмите клавишу возврата для лицензии. Также выберите Xcode 11
для инструментов командной строки из Preference -> Location -> CommandLine
в Xcode. Это сработало для меня.
У меня была та же проблема, и я обнаружил, что причиной этой ошибки была ошибка времени выполнения, потому что проект успешно компилировался. Ошибка была вызвана изображением, на которое не было ссылки в проекте.
В моем случае это произошло потому, что я непреднамеренно попытался построить на реальном устройстве вместо симулятора. Выбрав симулятор из списка, он снова заработал.
В моем случае я проверил сгенерированный отчет диагностики, и он показал
"Сообщение об ошибке Dyld: приложение было создано для iOS 13.2, которая новее, чем этот симулятор 13.1 "
Поэтому я изменяю цель развертывания iOS на 13.1 в настройках сборки.
Нажмите на резюме, и у меня это сработало.
Ничего из вышеперечисленного не помогло мне, но я нашел способ...
- Скопируйте содержимое файла с нарушением (например, ContentView.swift).
- Удалите файл с нарушением из вашего проекта.
- Создайте новый "SwiftUI View" и переименуйте его обратно в тот файл, который вы удалили.
- Вставьте содержимое, скопированное на шаге 1, обратно в.
- Щелкните возобновить на холсте.