2013年4月24日水曜日

[Android] データ通信接続状態の監視

 同僚から「ネットワークの接続状態が変化したことを知る方法を知らないか」と聞かれたので、このあたりのクラスが使えるんじゃないか、ということでConnectivityManagerを伝えました。

ConnectivityManager | Android Developers
http://developer.android.com/reference/android/net/ConnectivityManager.html

自分としては試したことのないクラスだったので、勉強がてら調べて見ることにしました。すると、ConnectivityManagerではなくて、TelephonyManagerで状態変化の監視ができるらしいことがわかりました。

TelephonyManager | Android Developers
http://developer.android.com/reference/android/telephony/TelephonyManager.html

listen()というメソッドを使うことで、いろいろな状況の変化をイベントとして受け取れるようになります。とりあえず、同僚の求めているものとしては十分そう。ManifestにREAD_PHONE_STATEのパーミッションを書かないといけないのが、ちょっとあれですが。

↓サンプルコードはこちらです。
https://www.box.com/s/4ppsdxj33nhehu69hlk9

0 件のコメント:

コメントを投稿