Когда серверу надо послать пуш, он это делает - пуляет в апишку файрбейза сообщение. Доставку пуша до приложения берёт на себя файрбейз. Достаточно реализовать Broadcast Receiver. Подробнее в документации.
В тот момент, когда юзер листает картинку, уже поздняк метаться, будет лагать. Конечно же нужно доставать как минимум часть листа, и делать постраничную подгрузку, плюс делать это заранее.