Почему бы не пойти с Background Fetch ?
Он доступен для таких приложений, как «Новости» или «Социальные сети», поэтому приложения могут получать самые последние данные даже до взаимодействия с пользователем. Это позволяет периодическое фоновое выполнение как есть.
Простой вызов будет получать данные каждый час.
// Fetch data once an hour.
UIApplication.shared.setMinimumBackgroundFetchInterval(3600)
Наконец, это не обходной путь или какой-либо частный API. Ваше приложение также будет принято appstore.