7

Voglio migrare da gcm a fcm nell'app per android. Devo inviare una notifica push ai vecchi utenti dell'app Android da gcm o posso inviarlo tramite il nuovo fcm dal server?Migrazione da gcm a fcm su android

FCM funziona correttamente Sono in grado di ricevere notifiche push sul dispositivo tramite fcm, ma non sono in grado di inviare notifiche push ai vecchi token di registrazione GCM dalla console FCM.


Di seguito è il codice che ho aggiunto al mio file manifesto per FCM al lavoro-

<uses-permission android:name="com.google.android.z.permission.RECEIVE" /> 
<uses-permission android:name="android.permission.WAKE_LOCK" /> 
<application> 
    <service 
     android:name=".view.activity.MyFcmListenerService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.MESSAGING_EVENT" /> 
     </intent-filter> 
    </service> 

    <service 
     android:name=".view.activity.MyInstanceIDListenerService"> 
     <intent-filter> 
      <action android:name="com.google.firebase.INSTANCE_ID_EVENT" /> 
     </intent-filter> 
    </service> 
</application> 
+1

Una volta che si esegue la migrazione il tuo progetto da GCM a FC M, sarai in grado di inviare come al solito tramite fcm. Sebbene ci siano passi da seguire per la migrazione. Controllane qualcuna [qui] (https://developers.google.com/cloud-messaging/android/android-migrate-fcm). Se hai bisogno di ulteriori dettagli, dai un'occhiata ai documenti ufficiali. Abbastanza sicuro che troverai quello che ti serve lì. –

+1

@intj Ho già eseguito la migrazione e la nuova configurazione di fcm funziona correttamente. Ma la mia preoccupazione è che non sono in grado di inviare notifiche push ai token di registrazione GCM. Quando provo a inviare il push al vecchio token di registrazione gcm tramite Firebase Console, fallisce. Puoi dare qualche input su questo? – Anmol

+0

Cosa stavi usando per generare i vecchi token? La console Firebase funziona solo con token InstanceID. –

risposta

1

Ho cercato molto ma non ho trovato una risposta soddisfacente. Quindi, ho applicato questa correzione.

Continuo a utilizzare il vecchio metodo che stavo usando per inviare notifiche push agli utenti GCM e per gli utenti che si registrano tramite FCM, sono in grado di inviarli notifiche push tramite la console di notifica FCM o Firebase.

P.S. Non è possibile inviare notifiche push ai token di registrazione GCM tramite FCM.

+0

Quindi hai implementazioni sia GCM che FCM nella tua app? Funziona per te? –

+0

@MarieAmida Gli utenti con versioni precedenti hanno gcm nell'app e i nuovi utenti hanno fcm. Quindi, ora quello che sto facendo è inviare push token usando entrambe le implementazioni lato server fcm & gcm. Inoltre, sta funzionando benissimo per me. – Anmol

1

penso che si può inviare tramite FCM. Per saperne di più su FCM è possibile consultare la documentazione per frequently asked questions about GCM to FCM. Anche se si stanno iniziando a migrare da GCM a FCM la potete seguire questo tutorial:

anche per ulteriori informazioni, è possibile controllare questo SO question.

+1

Ho già eseguito la migrazione e la nuova configurazione di fcm funziona correttamente. Ma la mia preoccupazione è che non sono in grado di inviare notifiche push ai token di registrazione GCM. Quando provo a inviare il push al vecchio token di registrazione gcm tramite Firebase Console, fallisce. Puoi dare qualche input su questo? – Anmol

+0

puoi aggiungere il file manifest nella tua domanda. – KENdi

0

In realtà funziona FCM e GCM sono sotto lo stesso cappuccio. Un token per GCM funziona anche per FCM. Tutto quello che devi fare è cambiare la tua implementazione lato client come menzionato here. e aggiornare l'endpoint server per fcm.googleapis.com/fcm/

0

ho fatto POC su questo stesso scenario, e quello che ho osservato è il seguente

"Non v'è alcun cambiamento di codice richiedono da un lato client quando si cerca di migrazione GCM a FCM, e ho provato sia Android e iOS e ' lavorando bene. Solo il cambiamento richiede di fare una corretta configurazione in FCM console (cioè dare una corretta id fagotto e progetto di id (SenderID))"