Как я могу определить, есть две возможные проблемы, вызывающие это.Во-первых, ваша логика должна быть: attributes.thumbnailData = image.pngData()
.Если это не так, это проблема с кэшированием миниатюры для определенного NSUserActivity
, которая существует с iOS 9. Платформа CoreSpotlight
, похоже, связывает данные значка с activityType
, так что если вы ранеепожертвовав этот объект NSUserActivity
, создание нового объекта NSUserActivity
не позволит вам обновить изображение значка, даже если вы ранее не предоставляли изображение значка.Лучшее, что вы можете сделать, - это отслеживать все постоянные идентификаторы внутри себя, удалить старый и создать совершенно новый NSUserActivity, который пользователь должен будет рассматривать как новый ярлык.
Это определенноглупая проблема, и я надеялся, что за 3,5 года, прошедшие с выхода iOS 9, Apple представила способ обновления миниатюрного изображения NSUserActivity
, но я не могу найти никаких доказательств того, что это так,Извините, я мог бы дать вам лучший ответ.