※ 本文為 ott 轉寄自 ptt.cc 更新時間: 2015-02-04 11:29:07
看板 AndroidDev
作者 COOLOD (看八卦 認真你就輸了)
標題 [問題] Wifi連線能力問題請益
時間 Wed Feb  4 09:36:43 2015


各位大大好 小弟最近再做有關android wifi相關的程式部份 爬了很多文

目前作到利用BroadcastReceiver偵測wifi狀態開關 但是遇到另外一種狀況

APP功能:
要從網路下載檔案 必須能偵測連線狀態 斷線時關閉下載 連線恢復後自動重啟下載

狀況:
用A手機當AP(開3G,開熱點名稱GGG),用B平板載入APP wifi選擇GGG

我操作A手機 開啟/關閉熱點 B平板都可以偵測到 關閉下載重啟下載

但是情況2 我熱點持續開著 關閉3G開啟3G 於B平板來說他都是有連線的狀態

可是實際上卻沒有出去連線的能力

我想要針對這種情況做偵測 但是都失敗了 也爬了很多文 但是都是針對wifi的連線

沒有對連線能力的解法

-------
以下是我針對wifi偵測部份的code

onCreat() {
..
    mConnectivityManager = (ConnectivityManager) getSystemService(CONNECTIVITY_SERVICE);
    mNetworkChangedReceiver = new ConnectivityChangedReceiver();
    registerReceiver(mNetworkChangedReceiver,
            new IntentFilter(ConnectivityManager.CONNECTIVITY_ACTION));
..
}
..
public boolean isNetworkConnected() {
        NetworkInfo info = mConnectivityManager.getActiveNetworkInfo();
        boolean connected = info != null && info.isConnected();
        return connected;
}
..
private class ConnectivityChangedReceiver extends BroadcastReceiver {

    public ConnectivityChangedReceiver() {
            //do something
    }

    @Override
    public void onReceive(Context context, Intent intent) {
        //do something
    }
}

---------
下面這些function都嘗試過 但是會認定正常連線 無法利用判斷
info.getTypeName();     // 目前以何種方式連線 [WIFI]
info.getState();        // 目前連線狀態 [CONNECTED]
info.isAvailable();     // 目前網路是否可使用 [true]
info.isConnected();     // 網路是否已連接 [true]
info.isConnectedOrConnecting(); // 網路是否已連接 或 連線中 [true]
info.isFailover();      // 網路目前是否有問題 [false]

也嘗試了蠻多ConnectivityManager和WifiManager的Intent但是都沒反應

想問大大們 是否有針對同樣情況做過處理 是否有哪個Intent或function關鍵字

是針對這種情況做處理的 請求大大們分享了 謝謝



--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 122.146.195.238
※ 文章代碼(AID): #1KqNUlbr (AndroidDev)
※ 文章網址: https://www.ptt.cc/bbs/AndroidDev/M.1423013807.A.975.html
ssccg: 你是說他有wifi,但是那個wifi沒連internet?1F 02/04 09:53
erttyy8821: 1.ping 2.follow systemUI 3.set connect timeout2F 02/04 09:56
COOLOD: s大 是的3F 02/04 11:20

--
※ 看板: ott 文章推薦值: 0 目前人氣: 0 累積人氣: 406 
分享網址: 複製 已複製
guest
x)推文 r)回覆 e)編輯 d)刪除 M)收藏 ^x)轉錄 同主題: =)首篇 [)上篇 ])下篇