Базовая структура Core Motion обеспечивает доступ к историческим данным для данных CMPedometer, поэтому, если ваше приложение использует только это, нет необходимости запускать в фоновом режиме.
Я играл с CM на прошлой неделе, и в моем тестировании, если у вас запущен активный запрос, когда ваше приложение отправляется в фоновый режим, обработчик запросов получает поток событий (которые произошли, когда приложение было приостановлено) по возвращении на передний план. Я не знаю, сколько событий будет кэшировано, и я не видел ничего в документации по этому поводу.
Такое поведение представляется достаточным. Я не могу вспомнить вариант использования Core Motion, где вам нужен постоянный фоновый доступ, исторических данных CMPedometer недостаточно, и это соответствует рекомендациям App Store.