-------------------------------- НОВЫЙ ОТВЕТ ------------- -----------------------
Вы должны быть в состоянии сделать это с помощью консоли Firebase. При создании Облачного сообщения вы можете выбрать в разделе «Цель» «Последнее взаимодействие с приложением» и выбрать, что вы хотите, чтобы сообщение отправлялось всем, кто не был связан с приложением, скажем, в течение 1 дня.
После этого вы устанавливаете в Планировании, что вы хотите, чтобы это была повторяющаяся кампания, и устанавливаете, чтобы это происходило "Ежедневно", например, в 12:00, и устанавливали, что вы хотите, чтобы каждый пользователь получал это только один раз. Теперь у вас есть кампания, которая каждый день в 12 часов проверяет, кто не был в приложении в течение 1 дня, и отправляет ему кампанию, а отправляет ее только один раз, чтобы не рассылать спама одному и тому же парню каждый день.
-------------------------------- СТАРЫЙ ОТВЕТ ------------- ----------------------
Вы можете создать, например, DailyJob в вашем приложении, и этот DailyJob может либо самостоятельно проверить, сколько дней с момента последнего сеанса было активно, и создать локальное уведомление, либо вы можете использовать этот DailyJob для отправки, чтобы сказать Firebase пользовательский атрибут " days_since_last_login "и настроить различные кампании на 2 дня в автономном режиме, 7 дней в автономном режиме, 31 день в автономном режиме и так далее в Firebase.
Для простого создания DailyJob вы можете использовать библиотеку заданий Evernote Android.