FB Push-Benachrichtigungen mit PhoneGap Build mithilfe von cordova-plugin-fcm
Muss ich implementieren von push-Benachrichtigungen in einer PhoneGap-Build-app, die ich entwickle.
Finde ich nicht viel Dokumentation über die Verwendung der neuen Google-Dienst, FB Cloud Messaging (FCM), aber da soll es ja das sein, was wir haben, zu verwenden, jetzt habe ich nach einer API, die könnte mir das Leben erleichtern.
Fand ich: https://www.npmjs.com/package/cordova-plugin-firebase
Also habe ich Hinzugefügt, um meine config.xml:
<plugin name="cordova-plugin-fcm" source="npm" />
Setzen und die google-Dienste.json habe ich aus https://console.firebase.google.com/ in den root der Ordner ich die zip-upload auf der Phonegap Build.
Aber ich bekomme die folgende Fehlermeldung:
Execution failed for task ':processReleaseGoogleServices'.
> File google-services.json is missing. The Google Services Plugin cannot function without it.
Searched Location:
/project/src/release/google-services.json
/project/google-services.json
Habe ich den "Projekt" - Ordner in den Stammordner und legen Sie die Datei dort, aber das funktioniert nicht weder.
Aktuell my app-Ordner sieht wie folgt aus:
\css
\img
\js
\res (icons and splashscreens)
index.html
config.xml
google-services.json
Wenn jemand weiß, wo ich habe, um diese Datei oder eine andere Möglichkeit dies umzusetzen, auch mit anderen API, ich würde es wirklich schätzen.
Ich habe noch nie verwendet, Phonegap CLI habe ich immer mit Phonegap Build.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Dateien werden müssen neben den
www
Ordner, problem ist, dass Phonegap Build können Sie nur laden Sie den Inhalt der besagten Ordner, so können Sie nicht die Dateien hochzuladen.Glücklicherweise gibt es etwas, das Sie tun können, Bauen, installiert die plugins auch direkt von npm und plugins arbeiten kann, dachte, das ganze Projekt, also das, was Sie brauchen, ist ein plugin, das die Dateien kopiert [
google-services.json
,GoogleService-Info.plist
] für Sie.Die meiste Arbeit ist bereits getan worden: cordova-plugin-fcm-config.
War es nicht für diesen Zweck gebaut, funktioniert aber wunderbar.
Gibt es eine zusätzliche Komplexität, obwohl; da kann man nicht hochladen, plugins (Sie können nur hinzufügen, einen Verweis darauf in Ihre
config.xml
), und das plugin braucht Ihre eigenen app-Konfigurations-Dateien, müssen Sie zu:Wo du es hochladen? Das könnte schwierig sein. Die Infrastruktur ist gebaut, um die Idee, die plugins sind für Allgemeine Zwecke und kann konfiguriert werden, in jedem Projekt, xml, so npm Sinn macht. Aber in diesem Fall, dass Ihr plugin enthalten sehr spezifische Daten zu Ihrem Projekt, so dass das hochladen zu npm würde verschmutzen die namespace-meiner Meinung nach.
Ich weiß nicht, über Sie, aber ich habe einen bezahlten account, also Veröffentliche ich das plugin in mein eigenes repository und legt, wie ein eigenes plugin. Dies ist, was ich empfehlen.
Cordova eingeführt, die
resource-file
tag vor einiger Zeit und es funktioniert auch in Phonegap Build.Können Sie, dass anstelle einer Gabel-plugin zum kopieren der
google-services.json
undGoogleService-Info.plist
DateienSetzen, die in der Wurzel des Projektes und die Verwendung der
resource-file
tag in der config.xml wie diese:Wenn mithilfe von cordova-android 7 oder neuer:
älteren Versionen
iOS
Sie können auch legte es in
www
Ordner, in diesem Fall in meinen Beispielen hinzufügenwww/
vor den Namen der Datei, in dersrc
Feld.https://cordova.apache.org/docs/en/7.x/config_ref/index.html#resource-file