Токен - это идентификатор который отправил сервер (APNs/GCM), он используется для связи приложения и серверной части. Кинвей на своей стороне хранит ваши токены, чтобы по ним отправить пуш. Иначе другого варианта нет. Это классно, если у вам не требуется делать выборку по определенным критериям.
Я такие сервисы не использую, т.к. часто в пушах присылаю техническую информацию, которая обычным (не всем) пользователям не должна быть показана. А для того чтобы сделать подобное, нужна своя база с токенами и другой инфой о владельце девайса.
Отослать пуши по критерию:
Обновление приложения на определенной платформе
Техническая информация по типу учетной записи (админ, модер, пользователь и тд..)
Поздравление с днем рождения, предоставление скидок
Уведомление о недостаточном балансе
и тд.. примеров масса
Я слабо представляю такую реализацию через сервис кинвей и подобным которые предоставляются из коробки в RAD.
Статья была написана, чтобы показать именно НАСТРОЙКУ через сервис Firebase, и никак не претендует на полное описание работы с пушами в целом.
Код на делфи был показан, чтобы убрать зависимость от сервисов из коробки
Код на PHP был показан, чтобы можно было реализовать функционал на своём сервере
Пару слов было сказано о правильном сохранении в БД, а вот бизнес логика уже у каждого приложения своя.