1樓:八維教育
我們在做訪問的時候都得進行判斷是否連網。判斷連網也比較簡單,就用到了兩個類。connectivitymanager和networkinfo。
只要執行下面的**就可以了。12
345connectivitymanager connmgr = (connectivitymanager) context.getsystemservice(context.connectivity_service);
networkinfo networkinfo = connmgr.getnetworkinfo(connectivitymanager.type_wifi);
boolean iswificonn = networkinfo.isconnected();
networkinfo = connmgr.getnetworkinfo(connectivitymanager.type_mobile);
boolean ismobileconn = networkinfo.isconnected();
只要有一個連線就是有網,networkinfo就是網路的資訊。還有一種更簡便的判斷是否連網的方法。12
connectivitymanager connmgr = (connectivitymanager) context.getsystemservice(context.connectivity_service);
networkinfo networkinfo = connmgr.getactivenetworkinfo();
在一個就是監聽網路變化,就是設定一個廣播。
註冊廣播,監聽connectivitymanager.connectivity_action這個action12
3intentfilter filter = new intentfilter(connectivitymanager.connectivity_action);
receiver = new networkreceiver();
context.registerreceiver(receiver, filter);
再實現一個廣播類就可以了。這樣網路一變化,就會受到廣播,然後執行對應操作了。12
3456
7public class networkreceiver extends broadcastreceiver
}下面就是來說一下判斷手機網路的型別了,2g,3g,4g
關於網路型別,在得到networkinfo = connmgr.getnetworkinfo(connectivitymanager.type_mobile);這個後,確定是手機網路後,通過networkinfo.
getsubtype()會得到網路的型別,用networkinfo.getsubtypename()會得到網路的名字。
我們通過這個networkinfo.getsubtype()得到的型別來判斷當前是什麼網路。
其實,android的api中已經定義了各種網路狀態,不是在connectivitymanager裡面定義的,而是在telephonymanager裡面的定義的。通過不同的api版本的修改,目前增加到了14個狀態值:
下面是通過自己查資料,和看別人查資料實驗得來的。整理如下:12
3456
78910
1112
1314
1516
1718
1920
2122
2324
2526
2728
2930
3132
3334
3536
3738
3940
4142
4344
4546
4748
4950
5152
5354
5556
5758
5960
6162
6364
6566
6768
6970
7172
7374
7576
7778
7980
8182
8384
8586
--------------------added in api level 1---------------------
public static final int network_type_unknown
network type is unknown
constant value: 0 (0x00000000)
(不知道網路型別)
public static final int network_type_gprs
current network is gprs
constant value: 1 (0x00000001)
(2.5g)移動和聯通
public static final int network_type_edge
current network is edge
constant value: 2 (0x00000002)
(2.75g)2.5g到3g的過渡 移動和聯通
public static final int network_type_umts
current network is umts
constant value: 3 (0x00000003)
(3g)聯通
-----------------added in api level 4---------------------
public static final int network_type_cdma
current network is cdma: either is95a or is95b
constant value: 4 (0x00000004)
(2g 電信)
public static final int network_type_evdo_0
current network is evdo revision 0
constant value: 5 (0x00000005)
( 3g )電信
public static final int network_type_evdo_a
current network is evdo revision a
constant value: 6 (0x00000006)
(3.5g) 屬於3g過渡
public static final int network_type_1xrtt
current network is 1xrtt
constant value: 7 (0x00000007)
( 2g )
---------------------added in api level 5--------------------
public static final int network_type_hsdpa
current network is hsdpa
constant value: 8 (0x00000008)
(3.5g )
public static final int network_type_hsupa
current network is hsupa
constant value: 9 (0x00000009)
( 3.5g )
public static final int network_type_hspa
current network is hspa
constant value: 10 (0x0000000a)
( 3g )聯通
--------------------------added in api level 8-------------------------
public static final int network_type_iden
current network is iden
constant value: 11 (0x0000000b)
(2g )
--------------------------added in api level 9-------------------------
public static final int network_type_evdo_b
current network is evdo revision b
constant value: 12 (0x0000000c)
3g-3.5g
--------------------------added in api level 11------------------------
public static final int network_type_lte
current network is lte
constant value: 13 (0x0000000d)
(4g)
public static final int network_type_ehrpd
current network is ehrpd
constant value: 14 (0x0000000e)
3g(3g到4g的升級產物)
--------------------------added in api level 13---------------------------
public static final int network_type_hspap
current network is hspa+
constant value: 15 (0x0000000f)
( 3g )
如何判斷當前網路連線狀態
2樓:匿名使用者
為識別是因為第一次連線網路時沒有選擇工作網路 家庭網路 時按了取消 所以出現為識別 可以放心上網 一定要改的話 你刪掉網路配置 重新連線 在選擇 也可能你那時會勾選以後預設選擇哪種 那就預設那種了 這個沒關係的
是否有平板電腦(WIN7,android或ios系統)可以運
建議用x86架構的平板電腦.今後安裝使用與現行電腦一致.acer iconia tab w500是一款極好的,功能配置強大的平板電腦,採用了amd c50的apu.愛立順r116也不錯,處理器intel atom n450.優派viewpad 97i 3g版 也可以.處理器intel atom n5...
怎樣判斷小米有沒發黴,小米怎麼判斷是否黴變
小米亦稱粟米,古代叫禾。是穀子去殼後的產物,因其粒小,直徑約1毫米左右,因此得名。粟的營養價值很高,含豐富的蛋白質和脂肪和維生素,它不僅供食用,入藥有清熱 清渴,滋陰,補脾腎和腸胃,利小便 治水瀉等功效,又可釀酒。如果小米發生黴變後,其中的碳水化合物 維生素 無機鹽等營養素受到大量的分解破壞和流失,...
怎麼判斷自己是不是真的耳鳴?怎樣判斷是否有耳鳴?
如果在鞭炮響的時候震到了耳朵,應該及時到醫院耳鼻喉科就診,並檢查一下外耳道及鼓膜有沒有受到氣壓損傷,而避免爆震性耳聾的發生。如果耳朵有耳鳴,自己就能感覺到。怎樣判斷是否有耳鳴?耳朵或腦部是否聽見異常聲音。症狀起因。一 主覺性 非振動性 耳鳴。1 耳鼻咽喉科疾病 耳部疾病引起耳鳴最為常見。1 鼓部如中...