Push-уведомления это TCP/IP-пакеты, которые сервер отправляет клиентам, подключенным к нему и поддерживающим подключение открытым (keep-alive), начать идеально с двух сторон сразу, с одной стороны реализация простейшего клиент-серверного (TCP/IP) приложения, а с другой стороны - изучение готовых библиотек для Push-уведомлений, например Google cloud messaging.