Шаблон дизайна для CloudKit и StoreKit - PullRequest
0 голосов
/ 24 ноября 2018

Да, я на это рассчитывал.

У кого-нибудь есть понимание шаблона проектирования, который объединяет CloudKit (для хранения идентификаторов SKProduct) и StoreKit?

Это то, что яразработан.Я знаю, что может быть лучше

AppDelegate.m

  • В application:didFinishLaunchingWithOptions переместите связанный список продуктов по умолчанию в каталог документов приложений, если он не существуетне существует, тогда позвоните fetchProductsFromCloudKit.
  • В fetchProductsFromCloudKit запросите CloudKit в блоке для активных идентификаторов продукта.Если CloudKit возвращает идентификаторы продуктов, сохраните массив в списке продуктов каталога приложений.
  • Использование идентификаторов продуктов из fetchProductsFromCloudKit, вызов fetchStoreKitProductsWithProductIdentifiers для запроса продуктов из StoreKit.
  • В StoreKitделегируйте productsRequest:didReceiveResponse, если [response.products count] > 0, затем сохраните все возвращенные продукты в свойство AppDelegate products.
  • applicationWillEnterForeground также вызывает fetchProductsFromCloudKit.

StoreViewController.м

  • В viewDidLoad тест для _appDelegate.products == nil.Если YES, то посмотрите в списке продуктов идентификаторы продуктов.Запустите запрос продукта в StoreViewController (StoreVC).Если NO, тогда загрузите представление таблицы продуктов StoreVC из _appDelegate.products.
  • В productsRequest:didReceiveResponse тесте StoreVC для response.products count> 0. Если YES, сохраните эти продукты в _appDelegate.products и перезагрузитеПредставление таблицы продуктов StoreVC.Если NO, то показать контроллер представления предупреждений с сообщением о выходе из магазина.
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...