2010-05-31 76 views
2

我想确定当前的连接状态是WIFI还是Cell网络(3g/2g等) 我正在使用SDK 1.5。确定连接状态

尝试了一些技术不真实的工作。

任何工作建议?

谢谢,

ray。

回答

1

我认为NetworkInfo有一个字段。

退房getTypeName()返回一个人类可读的名称描述网络的类型,例如“WIFI”或“移动”,去看看here

1

我忘了SDK版本,如果你看的“WIFI “或”MOBILE“,你可以使用ConnectivityManager conMan =(ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);

// mobile State mobile = conMan.getNetworkInfo(0).getState();

// wifi State wifi = conMan.getNetworkInfo(1).getState();

如果(移动== NetworkInfo.State.CONNECTED ||移动== NetworkInfo.State.CONNECTING){// 移动 }否则如果(WIFI == NetworkInfo.State.CONNECTED || wifi的==的NetworkInfo。 State.CONNECTING){// wifi的 }

+0

我试过一次,我得到了移动== NetworkInfo.State.CONNECTED为真两种情况下(wifi和不带WiFi) 这可能吗? – rayman 2010-06-01 10:31:44