0

アプリの起動時にネットワーク接続を確認する必要がありますが、状態が変化した後に PhoneGap オンライン/オフライン イベントが発生します。アプリがオンライン モードで起動した場合、オフラインになってからオンラインになるまで、オンライン イベントは発生しません。

これがコードです。

initialize: function() {
    this.bindEvents();
},

bindEvents: function() {
    document.addEventListener('deviceready', this.onDeviceReady, false);
},

onDeviceReady: function() {        
    document.addEventListener("offline", this.onOffline, false);
    document.addEventListener("online", this.onOnline, false);
},

それはコードが間違っていますか?

4

1 に答える 1

3

オンライン/オフライン イベントは、状態が変化したときにのみ発生するように作成されます。特定の時点で接続を確認する必要がある場合は、navigator.network.connection.typeを使用できます。

initialize: function() {
    this.bindEvents();
},

bindEvents: function() {
    document.addEventListener('deviceready', this.onDeviceReady, false);
},

onDeviceReady: function() {        
    document.addEventListener("offline", this.onOffline, false);
    document.addEventListener("online", this.onOnline, false);
    if((navigator.network.connection.type).toUpperCase() == "NONE" && 
       (navigator.network.connection.type).toUpperCase() == "UNKNOWN") {
        this.onOffline();
    }
    else {
        this.onOnline();
    }   
},

これがお役に立てば幸いです。

于 2013-09-14T12:16:14.990 に答える