Kann eine Meteor-Vorlage gepackt und als PhoneGap-Anwendung bereitgestellt werden?
Kann eine Meteor-Vorlage gepackt und als PhoneGap-Anwendung bereitgestellt werden?
Antworten:
Ja, dies ist möglich, aber nicht durch Packen der Meteor-App auf dem Telefon. Sie müssen stattdessen Phonegap auf Ihren Meteor-Server richten (Sie können die API weiterhin für den Zugriff auf Funktionen auf dem Gerät verwenden). Hier sind die Anweisungen:
Das ist es. Kompilieren Sie die App und führen Sie sie aus.
Ein paar Zeitersparnisse:
config.xml
, <content src="http://127.0.0.1:3000/" />
da dies die Eigenschaft ist, die im ViewController standardmäßig auf appURL gesetzt wird.
Ab Version 0.9.2 von Meteor ist Phonegap einfach zu verwenden: https://www.meteor.com/blog/2014/09/15/meteor-092-iOS-Android-mobile-apps-phonegap-cordova
Nun, ich denke, der beste Ausgangspunkt ist herauszufinden, wie weit Sie gehen wollen / müssen.
Würdest du wollen
Eine Meteor.js PhoneGap-App, die irgendwo eine Verbindung zu einem Server herstellt? Dann möchten Sie wahrscheinlich die Meteor-Klassen in einem PhoneGap-Projekt verwenden und mit Meteor.connect (url) eine Verbindung zu Ihrem Server herstellen.
Persistenz von Offline-App-Daten - Das wird schwierig ... Dafür wurde Meteor nicht entwickelt, obwohl es sicherlich Möglichkeiten gibt, dies
zu erreichen. Ich erinnere mich an Diskussionen von Backbone-, Spine- und
anderen clientseitigen JS-Frameworks. Es ist einfach, lokalen Speicher zu verwenden, aber der eigentliche Aufwand beginnt dort, wenn Sie Daten zwischen lokalem und dem Server synchronisieren möchten.
Das sollte helfen, auf den Punkt zu kommen ...
Ich habe bis zu einem gewissen Grad grob gearbeitet und hier den Prozess, dem ich gefolgt bin:
meteor bundle ../todos.tgz
u.protoype._start = function(a, d, e, f){
d = d.replace("file://localhost","http://localhost:3000");
...
}
Öffnen Sie anschließend die Datei app.html im Browser und stellen Sie sicher, dass der Server bereits ausgeführt wird. Auf diese Weise würde der Großteil der Anwendung funktionieren.
Dies ist jedoch nicht die Art und Weise, wie Sie es in Ihrer realen Anwendung verwenden möchten. Mit weiteren Änderungen ist es jedoch möglich, die Clientseite in Phonegap zu verwenden, wenn der Server an einem anderen Ort ausgeführt wird.
Meteor hat eine Methode zum Verbinden , um eine Verbindung zu einer anderen Meteor-Anwendung herzustellen, die den obigen Aufruf zum Ersetzen der URL möglicherweise auflöst, obwohl ich das noch nicht ausprobiert habe.
_start()
Methode. Überprüfen Sie die _start()
Methodendefinition, mit der das XHR-Objekt erstellt wird, und ersetzen Sie den URL-Parameter durch Ihre Zieldomäne.
Hier sind einfache Schritte zum Portieren der Meteor-App auf ein mobiles Gerät mit PhoneGap Meteor auf ein mobiles Gerät mit PhoneGap
Ändern Sie einfach Ihren stream_clientbf90.js
Port in Ihre Domain. Es funktioniert.
Hier ist eine Live-Demo auf phonegap + meteorjs + oauth2.
Ich habe diese App mit Meteor auf Google Play erstellt.
https://play.google.com/store/apps/details?id=com.youiest.tapmatrix&hl=de
Es handelt sich um eine private Arbeit, daher konnte der Quellcode nicht veröffentlicht werden.
Bitte zögern Sie nicht, Fragen dazu zu stellen.
Es gibt mehrere Möglichkeiten, wie ich versucht habe, mit Meteor + Phonegap zu arbeiten.
Vielen Dank.
Es gibt auch dieses Paket: https://github.com/awatson1978/cordova-phonegap
Ich habe es nicht persönlich versucht, aber es scheint der richtige Ansatz zu sein.
Update: Im Devshop von August wurde Phonegap-Unterstützung vom Kernteam mit coolen Demos und so weiter angekündigt .
Um damit herumzuspielen:
meteor update --release CORDOVA-PREVIEW@3
Erste Schritte: https://meteor.hackpad.com/Getting-Started-With-Cordova-Z5n6zkVB1xq