Поскольку невозможно точно узнать, действительно ли пользователь прочитал сообщение или пропустил его, вам необходимо использовать приближение, которое в большинстве случаев может быть правильным, но иногда ошибочным. Какой из них использовать и какой уровень неточности является приемлемым, действительно зависит от приложения — когда контент имеет юридические последствия, вы можете потребовать от пользователя установить флажок, указывающий, что он прочитал рекламу, в других случаях гораздо более простые подходы подходят. Если раньше вашей организации хватало механизма в старой версии, то сейчас нет веских причин изобретать что-то новое.
Поэтому я бы посоветовал просто реализовать старый алгоритм в вашем новом приложении. Мне это кажется простым, понятным и, скорее всего, достаточным для этой цели, и если бы мне пришлось реализовать такую функциональность в новом приложении, я бы, возможно, просто сделал это так.
Прикрепляю к посту несколько видео по теме: