Я в настоящее время owncloud iOS library для задачи загрузки моего приложения Swift. Написано в Objective-C и требует от меня пройти AutoreleasingUnsafeMutablePointer<NSProgress?>
до upload method.Как получить AutoreleasingUnsafeMutablePointer объекта Swift
Say создать новый объект, как так
let progress: NSProgress? = NSProgress()
Как я могу получить AutoreleasingUnsafeMutablePointer<NSProgress?>
этого объекта в Swift?
Я попытался это следующим образом:
var progress: NSProgress? = NSProgress()
let unsafeAutoreleasingProgressPointer = AutoreleasingUnsafeMutablePointer<NSProgress?>.init(&progress)
Но я получаю
EXC_BAD_ACCESS (код = 1, адрес = 0x15942320)
при выполнении кода. Я хотел бы сохранить ссылку на объект прогресса, потому что я хочу добавить обратный вызов наблюдателя, который сообщает мне о прогрессе загрузки в процентах (как также показано в примере ссылки).
К сожалению, я по-прежнему получаю фатальную ошибку при попытке вашего кода: Прогресс: NSProgress? = NSProgress(); var progressPointer = AutoreleasingUnsafeMutablePointer .init(); progressPointer.memory = progress !; Мне пришлось изменить тип NSProgress в указателе на Необязательный, потому что библиотека требует этого. –
slashburn