Не удалось собрать модуль «UIKit» на симуляторе, но не на телефоне

Я получил следующие ошибки при попытке построить свой проект на симуляторе iphone 5, 6 и 6 plus. Я попытался очистить и восстановить снова, но не сработало. Я понятия не имел, почему это происходит. Потому что, когда я подключаю свой телефон, он будет работать правильно на телефоне.

Самые важные ошибки здесь как-то UIKit и QuarztCore обе необоснованны.

Кто-нибудь может посмотреть на это? Как мне решить эту проблему, чтобы я мог запустить свое приложение на симуляторе! Благодарю вас!

/project-folder/QuartzCore.framework/Headers/CAMetalLayer.h:7:9: 'Metal/MTLPixelFormat.h' file not found   
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/System/Library/Frameworks/UIKit.framework/Headers/UICollectionViewLayout.h:11:9: Could not build module 'QuartzCore' 
/project-folder/Parse.framework/Headers/PFConstants.h:27:9: Could not build module 'UIKit' 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/System/Library/Frameworks/StoreKit.framework/Headers/SKStoreProductViewController.h 
/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneSimulator.platform/Developer/SDKs/iPhoneSimulator8.1.sdk/System/Library/Frameworks/StoreKit.framework/Headers/SKStoreProductViewController.h:9:9: Could not build module 'UIKit' 
/project-folder/hatchpic-Bridging-Header.h:8:9: Could not build module 'Parse' Failed to import bridging header 
'/project-folder/hatchpic-Bridging-Header.h' Failed to import bridging header 
'/project-folder/hatchpic-Bridging-Header.h' Command failed due to signal: Segmentation fault: 11

person donkey    schedule 09.02.2015    source источник


Ответы (1)


Причина не в StoreKit. Возможно, «CAMetalLayer», потому что для этого требуется устройство A7 (а не симулятор).

Обновлено: https://developer.apple.com/library/ios/documentation/IDEs/Conceptual/iOS_Simulator_Guide/TestingontheiOSSimulator/TestingontheiOSSimulator.html#//apple_ref/doc/uid/TP40012848-CH4-SW1

Вы можете найти API, которые не поддерживаются в симуляторе, по этой ссылке. Судя по всему, Apple удалила StoreKit из этого списка. Так что, возможно, причина не в StoreKit. Возможно, причина «CAMetalLayer»

API Limitations
Within iOS Simulator, there are some limitations to the APIs and features, including:

Apple Push Services
Privacy alerts for access to Photos, Contacts, Calendar, and Reminders
The UIBackgroundModes key
iCloud document syncing and key-value storage support
Unsupported frameworks include:

External Accessory
Media Player
Message UI
Event Kit
In UIKit, the UIVideoEditorController class
person Duyen-Hoa    schedule 09.02.2015
comment
Я исправил это, протестировав в телефоне, волшебным образом ошибки автоматически исчезают, но они возвращаются, если я хочу использовать симулятор. Так должен ли я переустанавливать свои симуляторы? - person donkey; 22.02.2015
comment
Вы не можете. Проблема в том, что вы используете API, которые не могут работать в симуляторе (см. список выше). - person Duyen-Hoa; 22.02.2015
comment
Я понимаю. У меня есть ключ Push Services и UIBackgroundModes в info.plist. Но у меня нет других функций. Но я не знаю, являются ли эти двое причиной того, что приложение не удалось запустить. Так как CAMetalLayer не имеет ничего общего с этими двумя функциями. Более того, у меня нет этого CAMetalLayer ни в одном моем коде, странно.. - person donkey; 22.02.2015