Изменение данных из хранилища документов в CloudKit

У меня есть массив объектов, которые я сейчас храню в каталоге документов в песочнице моего приложения. Я бы хотел, чтобы эти данные были сохранены в облаке пользователей, и чтобы несколько пользователей с одной и той же учетной записью iCloud могли обмениваться данными и активировать push-уведомления, если кто-то что-то изменит. Это приложение для составления бюджета, поэтому, если ваш супруг (-а) покупает что-то и вводит покупку в приложение, вы получаете push-уведомление. Я слышал, что CloudKit "так просто", поэтому я подумал, что это будет хорошим решением. Я не могу найти хороший способ загрузить этот массив данных о расходах в структуру записи.

Например, у меня есть 100 транзакций (каждая с датой, суммой и описанием). Прямо сейчас они хранятся в массиве пользовательского объекта SpendingData. Нужно ли проходить через все эти транзакции и создавать уникальные записи для каждой в облачной панели? Разве это не убьет (или, по крайней мере, не ухудшит) мое приложение? Есть лучший способ сделать это? Спасибо!

1 ответ

Решение

Я думаю, что лучший способ обработки этих транзакций - это отдельная запись для каждой транзакции. Затем, когда есть новая транзакция, вам нужно только написать 1 запись, и члены вашей семьи получат push-уведомление только для этой новой транзакции. Затем вы можете включить некоторые данные из этой транзакции в это push-уведомление. что-то вроде: "AAA добавил новую транзакцию для BBB"

Чтобы обеспечить отзывчивость вашего приложения, вы должны хранить эти транзакции в памяти и записывать их на диск (базовые данные или файл), чтобы при перезапуске приложения вы могли загружать их и в вашем приложении были доступны все данные без необходимости ждать извлечения из интернет.

Другие вопросы по тегам