Xcode 15.4 работает на различных симуляторах iOS и аппаратных устройствах от IOS 14.5 до 17.5.
Часть моего кода представляет пользователю страницу резервного копирования/восстановления, которая использует NSMetaDataQuery для обновления графического интерфейса. для загружаемых или скачиваемых файлов.
На каждом устройстве, где я запускаю код, все работает как положено, ЗА ИСКЛЮЧЕНИЕМ одного — iPhone 11 под управлением iOS 17.5; после запуска запроса я получаю следующую ошибку:
[ОШИБКА] не удалось получить идентификаторы удаленных операций: NSError: Cocoa 257 «Файл не может быть открыт, потому что у вас нет разрешения на его просмотр."
"От демона возвращена ошибка: Error Domain=com.apple.accounts Code=7 "(null)""
Из-за этой ошибки я не получаю обновления запросов и, следовательно, не могу отобразить, нужно ли загружать, загружать или синхронизировать файл.
Я не инициирую загрузку или загрузку файла. файл резервной копии, поскольку он помещен в вездесущий контейнер, и я оставляю загрузку/загрузку файла IOS; все, что я делаю с запросом, это отслеживаю состояние файла и предпринимаю соответствующие действия, чтобы показать пользователю процент загруженного/загруженного файла.
Как было сказано ранее, это только одно устройство, вызывающее У меня болит голова, поэтому я не знаю, связано ли это как-то с IOS 17.5, когда Apple внесла изменения, о которых я не знаю. У меня есть доступ к iPhone и iPad под управлением какой-либо версии IOS 16, и он работает безупречно.
запуск метода startAccessingSecurityScopedResource(), который был предложен некоторыми, возвращает «истину» в симуляторе. и «false» на устройстве, но даже тогда все устройства работают, кроме одного; так что, похоже, это не решение.
Изменение предиката запроса тоже не помогло.
Как мне детализировать, чтобы найти виновника - я в замешательстве.
Мой очень простой инициализатор и запуск запроса:
func initialiseQuery() {
query = NSMetadataQuery.init()
query.operationQueue = .main
query.searchScopes = [NSMetadataQueryUbiquitousDocumentsScope]
query.predicate = NSPredicate(format: "%K LIKE %@", NSMetadataItemFSNameKey, fileUrl.lastPathComponent)
query.operationQueue?.addOperation({ [weak self] in
self?.query.start()
self?.query.enableUpdates()
})
}
Подробнее здесь: https://stackoverflow.com/questions/785 ... ldnt-fetch
Ошибка Xcode NSMetaDataQuery на устройстве под управлением iOS 17.5 — [ОШИБКА] не удалось получить идентификаторы удален ⇐ IOS
Программируем под IOS
1716213086
Anonymous
Xcode 15.4 работает на различных симуляторах iOS и аппаратных устройствах от IOS 14.5 до 17.5.
Часть моего кода представляет пользователю страницу резервного копирования/восстановления, которая использует NSMetaDataQuery для обновления графического интерфейса. для загружаемых или скачиваемых файлов.
На каждом устройстве, где я запускаю код, все работает как положено, ЗА ИСКЛЮЧЕНИЕМ одного — iPhone 11 под управлением iOS 17.5; после запуска запроса я получаю следующую ошибку:
[b][ОШИБКА] не удалось получить идентификаторы удаленных операций: NSError: Cocoa 257 «Файл не может быть открыт, потому что у вас нет разрешения на его просмотр."
"От демона возвращена ошибка: Error Domain=com.apple.accounts Code=7 "(null)""[/b]
Из-за этой ошибки я не получаю обновления запросов и, следовательно, не могу отобразить, нужно ли загружать, загружать или синхронизировать файл.
Я не инициирую загрузку или загрузку файла. файл резервной копии, поскольку он помещен в вездесущий контейнер, и я оставляю загрузку/загрузку файла IOS; все, что я делаю с запросом, это отслеживаю состояние файла и предпринимаю соответствующие действия, чтобы показать пользователю процент загруженного/загруженного файла.
Как было сказано ранее, это только одно устройство, вызывающее У меня болит голова, поэтому я не знаю, связано ли это как-то с IOS 17.5, когда Apple внесла изменения, о которых я не знаю. У меня есть доступ к iPhone и iPad под управлением какой-либо версии IOS 16, и он работает безупречно.
запуск метода startAccessingSecurityScopedResource(), который был предложен некоторыми, возвращает «истину» в симуляторе. и «false» на устройстве, но даже тогда все устройства работают, кроме одного; так что, похоже, это не решение.
Изменение предиката запроса тоже не помогло.
Как мне детализировать, чтобы найти виновника - я в замешательстве.
Мой очень простой инициализатор и запуск запроса:
func initialiseQuery() {
query = NSMetadataQuery.init()
query.operationQueue = .main
query.searchScopes = [NSMetadataQueryUbiquitousDocumentsScope]
query.predicate = NSPredicate(format: "%K LIKE %@", NSMetadataItemFSNameKey, fileUrl.lastPathComponent)
query.operationQueue?.addOperation({ [weak self] in
self?.query.start()
self?.query.enableUpdates()
})
}
Подробнее здесь: [url]https://stackoverflow.com/questions/78507000/xcode-nsmetadataquery-error-on-device-running-ios-17-5-error-couldnt-fetch[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия