Я создаю приложение чата в Ionic 2 и нуждаюсь в реализации Push-уведомлений.Push-уведомления в Ionic 2
В связи с тем, что Google недавно применил свою услугу GCM, чтобы использовать FCM, документации о том, как реализовать с ней приложение, не так много. Я нашел following tutorial, который ищет то, что мне нужно.
Учебное пособие кажется хорошим, однако я смущен несколькими проблемами, и любая помощь будет оценена по достоинству.
Я занимаюсь разработкой на Windows-машине, поэтому в настоящее время вы просто строите Android.
Вопрос 1
Я путать со следующим утверждением:
Построить и запустить на реальных андроид и IOS устройств, чтобы увидеть маркер устройства в консоли.
Когда я бегу ionic build android
, он не создает устройство маркера в консоли. Знаете ли вы, как я могу узнать, что означает токен ?
Или это просто сгенерировано во время выполнения на data.registrationId
, и это передается на сервер?
push.on('registration', (data) => {
console.log("device token ->", data.registrationId);
//TODO - send device token to server
});
Вопрос 2
В Java,
static String API_KEY = "YOUR_GCM_API_KEY";
static String device_token = "YOUR_DEVICE_TOKEN";
Для static String API_KEY = "YOUR_GCM_API_KEY";
, является YOUR_GCM_API_KEY
сервера Key или Sender ID от ТСМ?
Получено ли у пользователя static String device_token = "YOUR_DEVICE_TOKEN";
приложение Ionic, когда вы это делаете: console.log("device token ->", data.registrationId);
? т.е. передается ли от клиента серверу?
Вопрос 3
Если мы направляем отдельные сообщения для отдельных устройств, например для приложения чата, как мы можем различать устройства? Каждое сообщение чата имеет идентификатор, связывающий его с уникальной парой пользователей (например, [userId1,userId2]
), но в вашем примере используется токен устройства, как вы отправляете его для уникальной пары пользователей?
Вопрос 4
я получаю следующее во время выполнения в браузере.
EXCEPTION: Error: Uncaught (in promise): TypeError: push.on is not a function
Могу ли я игнорировать это? Я подозреваю, что это происходит только в браузере, и я не получу эту ошибку, когда она работает на реальном устройстве.
UPDATE
Похоже, все вопросы, кроме Вопрос 3 был дан ответ ниже. Я предполагаю, что это может быть сделано с какой-то паб/субмодель на ключ, который уникален для чата.
Я разработал пост для Ионных Framework 2 нажимного уведомления с нуля, используя http://ampersandacademy.com/tutorials/ionic-framework-version-2/push-notification-using-google-firebase – Bharathiraja
Эй @Richard сделала вы решаете эту проблему, я получил ту же ошибку в своем приложении. – Ricardo