2016-12-12 5 views
1

Я получаю сбой на каждом 32-битном устройстве/симуляторе, работающем под управлением iOS 9, на save(to:for:completionHandler:).`save (to: for: completionHandler:)` из `UIDocument` сбоев

Xcode 8.2. Базовый SDK - 10.2. Цель - 9.0. Стандартные архитектуры. Swift 3. Для разработки и выпуска сборки. Sample project.

Не удалось найти, известно ли это, ни какие-либо связанные с этим проблемы. Можете ли вы порекомендовать какое-либо обходное решение? Должен ли я требовать 64-битную архитектуру?

+1

Пожалуйста отправьте соответствующий код и описание ошибки. – shallowThought

+0

Запустите образец проекта, прикрепленный на iPhone 5 под управлением iOS 9. –

+0

Посмотрите. Он имеет минимальные строки кода. Соответствующий код фактически находится в заголовке. Он падает где-то между вызовом сохранения и завершением вызова. Ошибка: EXC_BAD_ACCESS. Я не вижу причин для понижения! –

ответ

4

Обходной вернуть объект NS, инженер Apple, рекомендуется NSMutableData именно:

override func contents(forType typeName: String) throws -> Any { 
    guard let data = text.data(using: .utf8) else { ... } 
    if #available(iOS 10, *) { 
     return data 
    } else { 
     return NSMutableData(data: data) 
    } 
}