iOS 9 NSUserActivity для поиска не обновляет свой эскиз
Я использую NSUSerActivity
а также CoreSpotlight
для индексации. Я установил thumbnailURL
в contentAttributesSet
собственность как обычно. Изображения загружаются с сервера, и объект действия создается до загрузки изображения. Поэтому я установил изображение "заполнителя", и когда у меня будет возможность обновить contentAttributesSet.thumbnailURL
к правильному. Но когда я пытаюсь найти тот же элемент в Spotlight, изображение остается прежним.
Есть ли какие-то особые условия, о которых я должен знать при обновлении такой информации?
2 ответа
Я думаю, что это была ошибка в iOS 9.0 - 9.2. Вроде хорошо работает на iOS 9.3+
URL-адрес эскиза предназначен только для local
URLs. не отдаленные. Вы должны использовать thumbnailData.
Как я могу определить, это проблема с кэшированием миниатюры для конкретного NSUserActivity
, CoreSpotlight
структура, кажется, связывает данные значка с activityType
так что даже создавая новый NSUserActivity
Объект не позволит вам обновить изображение значка. Лучшее, что вы можете сделать, - это отслеживать все постоянные идентификаторы внутри себя, удалять старый и создавать совершенно новый NSUserActivity, который пользователь также должен будет рассматривать как новый ярлык.
Это определенно глупая проблема, и я бы надеялся, что через 3,5 года после выхода iOS 9 Apple представит способ обновить NSUserActivity
уменьшенное изображение.