2013年4月25日木曜日

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

昨日の調べ物の続き。
やはりREAD_PHONE_STATEはいただけない。
ということで、ConnectivityManagerを使って監視ができないか調査しました。

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

TelephonyManagerのように、定期的にイベントを返してくれるメソッドは無さそうな感じなので、自分でポーリングしてみることに。
5秒に1回ConnectivityManagerのgetAllNetworkInfo()を呼んでみました。うん、取れますね。

実際に機能として組み込む際はこんなに情報要らないのでgetActiveNetworkInfo()でも良さそうな気がします。
ConnectivityManagerならパーミッションも「ACCESS_NETWORK_STATE」で済みますしね。

↓サンプルはこちらです
https://www.box.com/s/5g9mi6w82k6u88k07ars

0 件のコメント:

コメントを投稿