benutze diesen Code einfach in deiner app.js innerhalb .run
%Vor%Ich habe ein ähnliches Problem gelöst, indem ich ngcordova verwendet habe. Es gibt Ihnen einen eckigen Wrapper um das Plugin, der Versprechungen implementiert.
Cordova-Plugins sind oft nicht bereit, wenn Sie versuchen, sie aufzurufen. Mit der Promise-Schnittstelle können Sie vermeiden, undefinierte Fehler zu vermeiden.
Ich habe das Beispiel von der ngcordova-Seite im Netzwerk-Plugin hier gestohlen.
%Vor%Für jeden Neubesucher, der Schwierigkeiten hat, die Antwort von Armed10 zu bekommen, möchten Sie vielleicht den Beitrag lesen, den ich geschrieben habe und der Ihnen Schritt für Schritt erklärt, wo und warum Sie ein Stück Code einfügen sollten. beginnen mit Ionic): Ссылка .
Außerdem habe ich den Beispielcode frei auf Github veröffentlicht: Ссылка .
edit: Gemäß den StackOverflow-Regeln füge ich hier auch den Post-Inhalt hinzu:
Schritt für Schritt, wie man das selbst macht
Starten Sie ein neues ionisches Projekt, indem Sie Folgendes tun:
%Vor%Ändern Sie dann das Verzeichnis in das neu erstellte IonicNetworkInfo:
%Vor%Installieren Sie ngCordova mit Bower:
%Vor%Wenn Sie keine Steckdose installiert haben, können Sie sie mit npm installieren:
%Vor%Öffnen Sie die Datei www / index.html in Ihrem bevorzugten Editor, und fügen Sie den Verweis auf ngCordova (direkt über dem Skript cordova.js) hinzu:
%Vor%Installieren Sie das ngCordova-Netzwerk-Plugin, indem Sie den folgenden Befehl in Ihrer Terminal / Eingabeaufforderung ausführen (Sie sollten dies aus dem Stammverzeichnis Ihrer App tun; in unserem Fall also das IonicNetworkInfo-Verzeichnis):
%Vor%Um zu überprüfen, ob Sie das Plugin erfolgreich installiert haben, können Sie den folgenden Befehl ausführen (aus dem Stammverzeichnis - ich wiederhole das nicht mehr; wenn ich sage, dass Sie einen Befehl von der Terminal / Eingabeaufforderung ausführen sollten, in diesem Fall bedeutet dies aus dem Stammverzeichnis der Anwendung):
%Vor%Sie sollten die folgende Ausgabe sehen:
%Vor%Öffnen Sie die Datei www / js / app.js und fügen Sie der Abhängigkeitenliste ngCordova hinzu, so dass die erste Zeile im Prinzip so aussieht:
%Vor%Erstellen Sie einen neuen Controller in der Datei www / js / app.js namens MyCtrl mit folgendem Inhalt:
%Vor%In diesem Controller fügen Sie einen Event-Listener für das Device-Ereignis an (weil es sein könnte, dass das Gerät bei der Ausführung dieses Codes noch nicht initialisiert wurde) und Sie erhalten die Netzwerkinformationen mit:
%Vor%Die Informationen über das Wetter, mit dem Sie mit dem Internet verbunden sind, erhalten Sie mit der folgenden Zeile:
%Vor%Dann registrieren Sie zwei Ereignisse $ cordovaNetwork: online und $ cordovaNetwork: online, die ausgelöst werden, wenn das Gerät online / offline wird. In ihnen aktualisieren Sie dann nur die Variablen $ scope (). Nur als Referenz sollte der gesamte Inhalt der Datei www / js / app.js lauten:
%Vor%Fügen Sie in der index.html-Datei innerhalb des ion-content-Tags den folgenden Inhalt ein:
%Vor%Im Wesentlichen zeigen wir hier den Inhalt der Netzwerkvariablen (die über den Controller an den $ scope angehängt ist). Durch die Verwendung der Ion-Toggle-Komponente werden auch die Benachrichtigungen "Ich bin online" / "Ich bin offline" angezeigt.
Als Referenz sollte der Inhalt der gesamten index.html-Datei wie folgt aussehen:
%Vor%Um diese Anwendung zu testen, sollten Sie sie auf Ihrem Gerät ausführen (weil Sie das Netzwerk im iOS-Simulator nicht deaktivieren können). Wenn Sie ein Android-Gerät an Ihren Computer angeschlossen haben (und alle vorhandenen SDKs), können Sie folgende Befehle ausführen, um Ihre Anwendung auf Ihrem Android-Gerät auszuführen:
%Vor%Bevor Sie die "Verbindung" aufrufen, müssen Sie das Gerät überprüfen:
%Vor%Ich arbeite am Ionic Framework und stelle Probleme mit dem Apache Cordova Network API zur Erkennung der Internetverbindung in der Android App. Ich habe dieses Tutorial genannt und auch ein Demo-Projekt erstellt, das gut funktioniert .
Ich habe die folgenden Schritte befolgt. [aus dem Tutorial]
%code%
%code%
Öffnen Sie %code%
Kopieren Sie diesen Code
%Vor%Installieren Sie Cordova Plugin %code%
Erstellen Sie %code%
Führen Sie %code%
Das funktioniert gut
Problem
Ich bekomme eine Warnung %code%
Nach kopieren Sie das Einfügen von %code% sieht so aus
%Vor%Sobald ich meine %code% und %code% in das Verzeichnis %code% kopiere, geht das Ganze in die Luft.
Jede Hilfe beim Debuggen wird sehr geschätzt.
Danke,
Hinweis
Ich habe %code% in %code% .
Ich habe %code% und %code% nach dem Kopieren ebenfalls neu installiert.
Wenn Sie kürzlich aktualisiert haben ( cordova 5.0 ausführen), würde ich annehmen, dass %code% installiert werden muss. Fügen Sie dies nach der Installation zu config.xml hinzu, um alle HTTP / s-Anfragen zuzulassen:
%Vor%Shell:
%Vor%Konfig.xml:
%Vor%Ich arbeite am Ionic Framework und stelle Probleme mit dem Apache Cordova Network API zur Erkennung der Internetverbindung in der Android App. Ich habe dieses Tutorial genannt und auch ein Demo-Projekt erstellt, das gut funktioniert .
Ich habe die folgenden Schritte befolgt. [aus dem Tutorial]
ionic start testApp sidemenu
ionic platform add android
Öffnen Sie testApp/www/js/app.js
Kopieren Sie diesen Code
%Vor% Installieren Sie Cordova Plugin cordova plugin add org.apache.cordova.network-information
Erstellen Sie ionic build android
Führen Sie ionic run android
Das funktioniert gut
Problem
www
von mainproject
in testApp
und führen Sie die Schritte 6 und 7 Ich bekomme eine Warnung Cannot find Window.Connection
Nach kopieren Sie das Einfügen von app.js
sieht so aus
Sobald ich meine app.js
und controllers.js
in das Verzeichnis testApp/www/js
kopiere, geht das Ganze in die Luft.
Jede Hilfe beim Debuggen wird sehr geschätzt.
Danke,
Hinweis
Ich habe cordova.js
in index.html
.
Ich habe platforms
und plugins
nach dem Kopieren ebenfalls neu installiert.
Ich habe ein ähnliches Problem gelöst, indem ich ngcordova verwendet habe. Es gibt Ihnen einen eckigen Wrapper um das Plugin, der Versprechungen implementiert.
Cordova-Plugins sind oft nicht bereit, wenn Sie versuchen, sie aufzurufen. Mit der Promise-Schnittstelle können Sie vermeiden, undefinierte Fehler zu vermeiden.
Ich habe das Beispiel von der ngcordova-Seite im Netzwerk-Plugin hier gestohlen.
%Vor%Für jeden Neubesucher, der Schwierigkeiten hat, die Antwort von Armed10 zu bekommen, möchten Sie vielleicht den Beitrag lesen, den ich geschrieben habe und der Ihnen Schritt für Schritt erklärt, wo und warum Sie ein Stück Code einfügen sollten. beginnen mit Ionic): Ссылка .
Außerdem habe ich den Beispielcode frei auf Github veröffentlicht: Ссылка .
edit: Gemäß den StackOverflow-Regeln füge ich hier auch den Post-Inhalt hinzu:
Schritt für Schritt, wie man das selbst macht
Starten Sie ein neues ionisches Projekt, indem Sie Folgendes tun:
%Vor%Ändern Sie dann das Verzeichnis in das neu erstellte IonicNetworkInfo:
%Vor%Installieren Sie ngCordova mit Bower:
%Vor%Wenn Sie keine Steckdose installiert haben, können Sie sie mit npm installieren:
%Vor%Öffnen Sie die Datei www / index.html in Ihrem bevorzugten Editor, und fügen Sie den Verweis auf ngCordova (direkt über dem Skript cordova.js) hinzu:
%Vor%Installieren Sie das ngCordova-Netzwerk-Plugin, indem Sie den folgenden Befehl in Ihrer Terminal / Eingabeaufforderung ausführen (Sie sollten dies aus dem Stammverzeichnis Ihrer App tun; in unserem Fall also das IonicNetworkInfo-Verzeichnis):
%Vor%Um zu überprüfen, ob Sie das Plugin erfolgreich installiert haben, können Sie den folgenden Befehl ausführen (aus dem Stammverzeichnis - ich wiederhole das nicht mehr; wenn ich sage, dass Sie einen Befehl von der Terminal / Eingabeaufforderung ausführen sollten, in diesem Fall bedeutet dies aus dem Stammverzeichnis der Anwendung):
%Vor%Sie sollten die folgende Ausgabe sehen:
%Vor%Öffnen Sie die Datei www / js / app.js und fügen Sie der Abhängigkeitenliste ngCordova hinzu, so dass die erste Zeile im Prinzip so aussieht:
%Vor%Erstellen Sie einen neuen Controller in der Datei www / js / app.js namens MyCtrl mit folgendem Inhalt:
%Vor%In diesem Controller fügen Sie einen Event-Listener für das Device-Ereignis an (weil es sein könnte, dass das Gerät bei der Ausführung dieses Codes noch nicht initialisiert wurde) und Sie erhalten die Netzwerkinformationen mit:
%Vor%Die Informationen über das Wetter, mit dem Sie mit dem Internet verbunden sind, erhalten Sie mit der folgenden Zeile:
%Vor%Dann registrieren Sie zwei Ereignisse $ cordovaNetwork: online und $ cordovaNetwork: online, die ausgelöst werden, wenn das Gerät online / offline wird. In ihnen aktualisieren Sie dann nur die Variablen $ scope (). Nur als Referenz sollte der gesamte Inhalt der Datei www / js / app.js lauten:
%Vor%Fügen Sie in der index.html-Datei innerhalb des ion-content-Tags den folgenden Inhalt ein:
%Vor%Im Wesentlichen zeigen wir hier den Inhalt der Netzwerkvariablen (die über den Controller an den $ scope angehängt ist). Durch die Verwendung der Ion-Toggle-Komponente werden auch die Benachrichtigungen "Ich bin online" / "Ich bin offline" angezeigt.
Als Referenz sollte der Inhalt der gesamten index.html-Datei wie folgt aussehen:
%Vor%Um diese Anwendung zu testen, sollten Sie sie auf Ihrem Gerät ausführen (weil Sie das Netzwerk im iOS-Simulator nicht deaktivieren können). Wenn Sie ein Android-Gerät an Ihren Computer angeschlossen haben (und alle vorhandenen SDKs), können Sie folgende Befehle ausführen, um Ihre Anwendung auf Ihrem Android-Gerät auszuführen:
%Vor%benutze diesen Code einfach in deiner app.js innerhalb .run
%Vor%Tags und Links angularjs cordova ionic-framework cordova-plugins ionic