Android飛行模式獲取網(wǎng)絡(luò)狀態(tài)的變化
作者:佚名
Android接收網(wǎng)絡(luò)狀態(tài)變化的Receiver是在代碼中動(dòng)態(tài)注冊(cè)的,也就是說在xml里面沒有注冊(cè)。然后在使用過程中,當(dāng)有些手機(jī)在飛行模式下打開wifi我就獲取不到網(wǎng)絡(luò)狀態(tài)的變化,需要退出程序再進(jìn)來一次才能修改已經(jīng)顯示出來的網(wǎng)絡(luò)狀態(tài)。
Android接收網(wǎng)絡(luò)狀態(tài)變化的Receiver是在代碼中動(dòng)態(tài)注冊(cè)的,也就是說在xml里面沒有注冊(cè)。然后在使用過程中,當(dāng)有些手機(jī)在飛行模式下打開wifi我就獲取不到網(wǎng)絡(luò)狀態(tài)的變化,需要退出程序再進(jìn)來一次才能修改已經(jīng)顯示出來的網(wǎng)絡(luò)狀態(tài)。
解決辦法就是在注冊(cè)的時(shí)候,手工提高Receiver的優(yōu)先級(jí):
- IntentFilter filter = new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION);
- filter.setPriority(Integer.MAX_VALUE);//設(shè)置優(yōu)先級(jí)為最高
- registerReceiver(YourReceiver, filter);
然后就可以在飛行模式下獲取到網(wǎng)絡(luò)狀態(tài)的變化了。
責(zé)任編輯:徐川
來源:
OSChina