2

デバイスが sencha touch アプリでインターネットに接続されているかどうかをどのように確認しますか?

4

2 に答える 2

3

navigator.onLine(Sencha 固有ではなく、一般的なブラウザのサポート) という属性があります。

私が PhoneGap アプリケーションを使用している場合 (Sencha Touch を使用している場合はよくあることです)、network.isReachable関数を使用したいと思います。

「オフライン イベント」と呼ばれるものもあり、John Resig が彼のブログで説明しています: http://ejohn.org/blog/offline-events/

于 2011-04-20T09:47:40.537 に答える
3

ajax リクエスト中にネットワーク接続がない場合、sencha touch はステータス 0 のレスポンスを返します。これがアプリで使用しているものです (phonegap でも機能します)。

// global error handling
Ext.Ajax.on('requestexception', function(connection, response) {
  // get rid of any loading masks that are present
  Ext.each(Ext.query('.x-mask'), function(el) {
      new Ext.Element(el).hide()
  });
  switch(response.status) {
    case 0 :
      Ext.Msg.alert('Error Loading', 'No Internet connection.');
      break;
    case 401 :
      Ext.Msg.alert('Login Failed', 'Check your username and password.');
      break;
    default :
      Ext.Msg.alert('Whoops!', 'An unexpected error has occurred and we have been alerted.');
  }
});

これは touch 1.1 用であり、2.0 ではまだ試していないことに注意してください。

于 2011-12-09T21:28:49.793 に答える