Я планирую одновременно использовать в своем приложении NSUserActivity и CoreSpotlight, но почему-то не могу заставить его работать так, как задумано.
Сейчас работаю в интернет-магазине розничной торговли.
Потребуются следующие шаги:
Шаг 1. Каждый продукт, который пользователь посетил в моем приложении для iPhone, будет идентифицирован с помощью объекта NSUserActivity, который будет отображаться в API поиска. Кроме того, он общедоступен и имеет уменьшенное изображение, заголовок, описание и дату истечения срока действия.
Шаг 2. Пользователь выполняет поиск в поиске iPhone, и продукт там появляется. Он также будет отображаться в приложении, если пользователь нажмет на него. Пока все легко достижимо.
Шаг 3. Пользователь имеет право "сохранить" этот продукт, чтобы никто другой не смог получить его раньше него. Итак, как только продукт сохранен, я хотел бы изменить детали NSUserActivity, чтобы он мог отображать в описании продукт, сохраненный. Насколько я знаю, я не могу этого сделать, так как для этого нет API.
В идеале я хотел бы изменить описание и изображение, чтобы пользователь знал, что продукт теперь принадлежит ему, поэтому я бы сделал NSUserActivity закрытым и изменил его свойства, но я не могу найти способ.
С другой стороны, я мог бы использовать NSUserActivity для обработки общедоступных продуктов, а CoreSpotlight — для сохраненных, но в этом случае приложение будет отображать один и тот же продукт дважды. Тот, что сохранен и приватен, и тот, что публичен. Чего мне хотелось бы избежать, так как я хочу, чтобы вы видели один и тот же продукт только один раз, в данном случае тот, который вы сохранили и он ваш.
Есть ли способ добиться этого?
The user has the right to 'save' that product, so nobody else can get it before he does.
? Должно ли это вывести публичный листинг из индекса Apple? Я не уверен, что предлагают эту способность в настоящее время. - person shortstuffsushi   schedule 12.08.2015