13 Stimmen

phonegap, Verbindung zum Server fehlgeschlagen

Ich versuche, eine Android-App mit Phonegap zu schreiben, und ich schreibe eine statische Titelseite mit Schaltflächen, die funktionierte, bis ich jQuery mobile und jQuery (die als externe Dateien verlinkt sind) eingeführt habe. Jetzt gibt es mir diese Fehlermeldung (nachdem es ein leeres Fenster für 30 Sekunden oder so produziert):

Die Verbindung zum Server zu "www/assets/index.html" war nicht erfolgreich.

Da die Nachricht weggeblitzt ist, kann ich sie nicht mehr lesen. Kann mir jemand helfen?

7voto

Paul Beusterien Punkte 24701

Was genau meinen Sie mit "als externe Dateien verknüpft"?

Die jQuery Mobile- und jQuery-Quellen müssen sich entweder im Verzeichnis assets/www befinden oder extern auf einer zugänglichen cdn-Site mit aktivierten drahtlosen oder mobilen Daten verlinkt sein.

Hier ein Beispiel aquí .

Siehe auch JQuery Mobile + PhoneGap für Android - Fehler beim Laden von index.html - Fügen Sie in Ihrer benutzerdefinierten Aktivitätsdatei vor dem Aufruf von super.loadUrl die folgende Zeile ein: super.setIntegerProperty("loadUrlTimeoutValue", 60000);

4voto

Umesh N Punkte 211

Eine weitaus bessere Lösung ist es, eine extrem leichte Datei für das erste Laden zu verwenden und dann auf die ursprüngliche index.html umzuleiten. Zum Beispiel:

<!doctype html>
<html>
  <head>
   <title>tittle</title>
   <script>
       window.location = './index.html';
   </script>
  <body>
  </body>
</html>

3voto

Thomas V J Punkte 628

Das hat mein Problem gelöst

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    super.loadUrl("file:///android_asset/www/home/index.html");
    super.setIntegerProperty("loadUrlTimeoutValue", 10000); 

Ich habe hinzugefügt super.setIntegerProperty("loadUrlTimeoutValue", 10000); in die Datei com.mypackage.xxx.java für 10 Sekunden Wartezeit.

1voto

CoatedMoose Punkte 3056

Ich vermute, dass das Problem darin besteht, dass Sie die super.loadUrl() falsch eingegeben. loadUrl sollte diese Zeichenfolge enthalten file:///android_asset/www/index.html und sich tatsächlich in assets/www/ .

Das fehlende 's' hat mich persönlich gestört.

Edita:

Einige andere Dinge sind zu überprüfen:

  • Der Browser ist in der Lage, auf das Internet zuzugreifen
  • Berechtigungen für den Internetzugang.
  • Versuchen Sie, die jquery- und jqm-Bibliotheken auf das Gerät herunterzuladen, und speichern Sie sie mit index.html . Da der Emulator langsam ist, kann er die Reaktion der Seite auf das Herunterladen der Bibliotheken beeinträchtigen. Die lokale Speicherung sollte dies vermeiden.

0voto

Kathir Punkte 4239

Hallo, ich denke, Sie laden mehrere Skripte in der Startzeit, so dass Sie etwas tun, wie dies

<!doctype html>

<html>

    <head>

        <title>tittle</title>

        <script>

            window.location='./main.html';

        </script>

    <body>      

    </body>

</html>

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X