Network Information プラグイン
テスト環境 ( バージョン番号 ) : 2.0.2
このプラグインの詳細は、 こちらの原文 ( GitHub ) をご確認ください。
プラグイン ID
プラグインの追加方法
このプラグインを使用する場合には、Monaca クラウド IDE の [ Cordova プラグインの管理 ] 上で、Network Information
プラグインを有効にします。
対象プラットフォーム
Android
iOS
Connection
connection
オブジェクトを使用して、セルラー、WiFi 接続などのネットワーク情報を取得します ( navigator.connection
経由で情報にアクセスします )。
プロパティ
connection.type
定数
Connection.UNKNOWN
Connection.ETHERNET
Connection.WIFI
Connection.CELL_2G
Connection.CELL_3G
Connection.CELL_4G
Connection.CELL
Connection.NONE
connection.type
このプロパティを使用して、ネットワーク接続の状態と接続のタイプを確認します。
例
API の変更点
Cordova 2.3.0 までは、navigator.network.connection
経由で Connection
オブジェクトにアクセスしていましたが、W3C の仕様に準拠するため、navigator.connection
経由に変更しました。 navigator.network.connection
は利用できますが、将来的には廃止します。
iOS 特有の動作
iOS では、セルラー接続のタイプを識別できません。
モバイルデータ通信 ( セルラーを使用したデータ通信 )に関しては、
navigator.connection.type
はConnection.CELL
になります。
ネットワーク関連のイベント
offline
アプリがオフラインになったときに、このイベントが発火します。端末は、インターネットに接続されていません。
詳細
デバイスのネットワーク接続が切れたときに、offline
( オフライン ) イベントが発火します ( connection.type
が NONE
に変わったときに発火します )。ネットワーク接続が切れているため、アプリは、インターネットへアクセスできません。Connection API と同じ情報を使用します。
原則、イベントリスナーの登録には、 document.addEventListener
を使用します。また、JavaScript からネイティブ機能へのアクセスは、deviceready
イベントの発火後に行います。
例
iOS 特有の動作
初回起動時は、offline
( オフライン ) イベントが発火するまで ( 発火の条件が揃ってること )、最低 1 秒かかります。
online
アプリがオンラインになったときに、このイベントが発火します。端末は、インターネットに接続されています。
詳細
端末がネットワークに接続して、アプリからインターネットが使用できる状態になったときに、online
( オンライン ) イベントが発火します ( connection.type
が NONE
から他の値に変わったときに発火します )。Connection API と同じ情報を使用します。
原則、イベントリスナーの登録には、 document.addEventListener
を使用します。また、JavaScript からネイティブ機能へのアクセスは、deviceready
イベントの発火後に行います。
例
iOS 特有の動作
初回起動時は、online
( オンライン ) イベントが発火するまで ( 発火の条件が揃ってること )、最低 1 秒かかります ( connection.type
が UNKNOWN
になる前に )。
サンプル
このセクションのコード例は、オンラインイベントとオフラインイベント、およびネットワーク接続ステータスを使用しているアプリケーションの動作を変更する例を示しています。
まず、サンプルデータ用に新しい FileEntry オブジェクト( data.txt )を作成します。 この関数を deviceready
ハンドラから呼び出します。
このコード例では、File プラグインが必要です。
次に、deviceready
で online と offline イベントリスナーを追加します。
アプリの onOnline
関数は、online イベントを処理します。 イベントハンドラで、現在のネットワーク状態を確認します。 このアプリでは、Connection.NONE 以外のすべての接続タイプを good として扱います。 接続している場合は、ファイルをアップロードしようとします。
前のコードで online イベントが発生した場合は、アプリの tryToUploadFile 関数を呼び出します。 FileTransfer オブジェクトのアップロード機能が失敗した場合は、アプリケーションの offlineWrite 関数を呼び出して、現在のデータを保存します。
この例では、FileTransfer プラグインが必要です。
offlineWrite 関数のコードは次のとおりです。
このコード例では、File プラグインが必要です。
offline イベントが発生した場合は、ユーザーに通知する(この例では単にログに記録する)操作を行います。
最終更新
役に立ちましたか?