У меня есть приложение iOS о подкастах, и я хочу отслеживать, как долго пользователь слушает каждый подкаст. Я попробовал базовое c - когда пользователь играет, я сохраняю метку времени, а когда останавливается, он отправляет событие с разницей в метке времени, но, очевидно, это не работает, потому что есть много крайних случаев.
У меня есть проблемы знать, когда пользователь имеет приложение в фоновом режиме и перестает слушать в какой-то момент через элементы управления системой. Также, когда пользователь или система убивает приложение, не нажимая «пауза» или «стоп». Я думаю, что эти 2 случая являются моими основными неотслеживаемыми случаями.
Есть идеи, как мне создать работающее решение? Я не хочу / не могу оплачивать внешние услуги - я просто полагаюсь на Firebase.
Спасибо!