Просто столкнулся с проблемой, когда мне нужно работать с внешней структурой и пакетом.
В то время как фрейм импортирован и его функции могут быть вызваны просто отлично, один из его методов пытается загрузить перо из сопровождающего пакета, который заканчивается на NSInternalInconsistencyException
по причине
«Не удалось загрузить NIB в комплекте».
Я заметил, что, хотя пакет находится в ресурсах копирования пакетов и его можно найти, вызвав Bundle.allBundles
, в сообщении об ошибке говорится, что это пакет "not yet loaded"
. Есть ли что-то, что я должен был сделать, чтобы пакет мог быть загружен заранее?
Обновление: ранее я не предоставлял соответствующий код, поскольку ошибка возникла как побочный эффект вызова фреймворка, поэтому я точно не знаю, как "загружается" перо. Сам код такой:
if let request = AUTRequest.init(transactionType: .debitGeneric) {
AUTCTFClient.executeTransaction(with: request, from: self) { (_response) in
if let response = _response {
print(response)
}
}
}
self
— это текущий контроллер представления, и ошибка возникает после вызова executeTransaction
, но до выполнения блока ответа.
Это как-то связано с тем, что Bundle не загружается, или виноват сам фреймворк?