¿Qué servicio proporciona ayuda para administrar las notificaciones GCM / APNS?

Solo puedo hablar sobre APNS, pero supongo que GCM no es muy diferente.

Creo que estás pensando el problema de manera incorrecta.
Conoces los dispositivos del usuario y los temas del usuario.

No es necesario conectar dispositivos a los temas.

1. El usuario inicia sesión en un nuevo dispositivo, usted almacena el token de notificación que APNS genera. También debe guardar el identificador del dispositivo con el token como referencia en el futuro. También debe asociar el token con el usuario, por supuesto;
2. Cada vez que el usuario tiene que recibir una notificación push, busca todos sus tokens de notificación actuales y envía los mensajes a todos;
3. Cuando el usuario cierra sesión en el dispositivo, elimina el token de notificación de ese dispositivo en particular.
4. Si otro usuario inicia sesión en el mismo dispositivo, pase a 1.

Y eso es.