2012年2月1日水曜日

getNetworkInfo

getNetworkInfo()の関数を使いました。

最初に、ConnectivityManager classを取得します。
ConnectivityManager cm = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
NetworkInfo クラスを取得します。例として TYPE_MOBILE の情報を取得しました。
NetworkInfo ni = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
Wifiと3Gが使用できる状態で、setNetworkPrefernce()を使用して、ネットワークの使用優先度を変更しようと主ましたが、変更されませんでした。
cm.setNetworkPreference(ConnectivityManager.TYPE_MOBILE);
If you use setNetworkPreference(), you must add CHANGE_NETWORK_STATE feature.
ソースコードはここです。
Androidに関する課題や、ほしいアプリがあればメールやTwitterで連絡ください。試してみます。

1 件のコメント:

  1. 最近、似たようなことを調べたので情報共有します。
    Androidでは、WiFiが3Gより優先される仕様です。
    両方有効な環境でどうしても3Gを使用したい場合は、WiFiを一時的に無効にするか、プロファイルを切り替えるかですね。

    参考URL
    http://www.rainbowbreeze.it/tag/startusingnetworkfeature/
    http://android.boo.jp/contents/Framework/ConnectivityManager01.html

    返信削除