Ionic 3 - плагин Firebase - не может получить токен телефона - PullRequest
1 голос
/ 20 марта 2019

когда я вызываю firebase.getToken (), он возвращает неопределенное значение или ноль

import { Firebase } from '@ionic-native/firebase';

constructor(private firebase: Firebase) { }

...

this.firebase.getToken()
  .then(token => console.log(`The token is ${token}`)) // save the token server-side and use it to push notifications to this device
  .catch(error => console.error('Error getting token', error));

this.firebase.onNotificationOpen()
   .subscribe(data => console.log(`User opened a notification ${data}`));

this.firebase.onTokenRefresh()
  .subscribe((token: string) => console.log(`Got a new token ${token}`));

Установленные платформы:

 android 8.0.0

Доступные платформы:

  browser ~5.0.1
  ios ~4.5.4
  osx ~4.0.1
  windows ~6.0.0

Ответы [ 2 ]

3 голосов
/ 21 марта 2019

Я получил ответ.

Я не получал токен от

this.fcm.getToken()

Но я получил код при обновлении токена, используя следующий код:

this.fcm.onTokenRefresh();

В родных документах -v3

Получить токен устройства

Returns: Promise Обратите внимание, что токен будет нулевым, если он еще не установлен

Пожалуйста, обратитесь по ссылке ниже
https://ionicframework.com/docs/v3/native/firebase/

На самом деле getToken () вообще не возвращает никакого ответа.

0 голосов
/ 10 апреля 2019

Я тоже столкнулся с той же проблемой. Это потому, что платформа не была готова, поэтому сделал так:

import { Firebase } from '@ionic-native/firebase';
import { Platform } from 'ionic-angular'; 

constructor(private firebase: Firebase, private platform: Platform) {
   this.platform.ready().then((readySource) => {
   
      this.firebase.getToken()
        .then(token => console.log(`The token is ${token}`))
        .catch(error => console.error('Error getting token', error));

      this.firebase.onNotificationOpen()
        .subscribe(data => console.log(`User opened a notification ${data}`));

      this.firebase.onTokenRefresh()
        .subscribe((token: string) => console.log(`Got a new token ${token}`));  
        
   });
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...