Ich habe an einer jQuery Mobile Web App gearbeitet, die in Ruby on Rails geschrieben wurde, und möchte sie als native Android App zur Verfügung stellen. Ich habe das Phonegap-Projekt eingerichtet, um meine URL zu laden, und alles scheint zu funktionieren, aber ich habe gelesen, dass Google die App ablehnt, wenn es einfach ein Webview-Container zu einer externen URL ist. Hat jemand Erfahrungen damit gemacht?
Nach dem, was ich sagen kann, muss ich die Web-App neu schreiben, um Ajax-Aufrufe zu verwenden, um die Seite zu füllen, anstatt mich ausschließlich auf Web-Anfragen an meinen Webserver zu verlassen. Kann mir jemand Einblick geben? Würden sie eine PhoneGap App akzeptieren, die einfach eine externe URL lädt? Jede Hilfe wird geschätzt.
Update1: Ich habe auch gelesen, dass die Fähigkeit, keine Internetverbindung zu nutzen, einer der Hauptgründe dafür ist, dass sie Ihre App genehmigen / ablehnen. Ich denke, dass dies in der Android-App mit einer Logik behandelt werden könnte, die nach einer Internetverbindung sucht, und wenn es existiert, laden Sie die externe URL, wenn sie keine lokale HTML-Splash-Seite lädt. Wäre diese Idee in Ordnung?
Update2: Wäre es eine Option, ein "Skelett" der App als grundlegende HTML-Dateien in der Telefon-Lücke-App zu haben, die nur Ajax verwendet, um alle Haupt-HTML herunter zu ziehen? Auf diese Weise würde die App auch ohne Internetverbindung funktionieren, aber Sie könnten auch große Änderungen am Inhalt der Seiten vornehmen, die bei jeder Anfrage gelöscht werden. Ist das eine praktikable Option?
Ich habe noch nie gehört, dass eine App aus dem Play Store abgelehnt wurde, weil sie nur ein WebView-Container ist. Aber selbst wenn sie Ihre App nicht ablehnen, sollten Sie auf diese Weise keine PhoneGap-Anwendung erstellen. Am Ende wird es eine App geben, die sich anfühlt, als wäre es nur ein WebView-Container und eine App, die sich leicht bricht, wenn die Konnektivität nicht mehr korrekt ist. Denken Sie daran, dass selbst bei gutem Empfang die Latenzzeit auf einem Telefon hoch ist. Daher ist die Reduzierung der Anzahl von Anforderungen, die Sie ausführen müssen (für statische Dateien und Assets) von größter Bedeutung.
Idealerweise sollten Sie bei der Portierung einer Website auf eine PhoneGap-Anwendung Ihre Schnittstelle so weit wie möglich entkoppeln. Es sollten weniger Variablen vom Controller an die Ansichten übergeben werden, und mehr Daten sollten AJAX-Aufrufe passieren. Wenn Ihr Front-End-Code (alle Dateien in App / Views) statisch geliefert werden kann, ist der Wechsel zu einer PhoneGap-App einfach.
Stellen Sie sicher, dass die Aktionen in Ihren Controllern alle Antworten auf JS ( format.js
) haben, nicht nur auf HTML. Ihre Ansichten sollten AJAX-Aufrufe an Rails machen, um die Daten zu erhalten, die Seiten über AJAX ausfüllen. Dann können Sie Ihre Ansichten (und Ihre Assets) in Ihrer PhoneGap App bündeln.
Tags und Links android cordova ruby-on-rails jquery-mobile