2012-05-06 42 views
12

Tôi đã Googled và tìm thấy nhiều trang web nói về 'tắt radio Wifi'. Nhưng trong trường hợp của tôi, tôi chỉ muốn các thiết bị Android để ngắt kết nối từ một mạng wifi cụ thể (SSID biết) mà không cần chuyển OFF radio WiFi. Vui lòng cho tôi một số thông tin chi tiết về vấn đề nàyAndroid :: Cách ngắt kết nối khỏi mạng wifi?

Trả lời

17

Chà điều này không nên mất một tháng để được trả lời.

Đây là cách đơn giản nhất mà tôi thường sử dụng:

WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE); 
wifi.disconnect(); 
discon = new DisconnectWifi(); 
registerReceiver(discon, new IntentFilter(WifiManager.SUPPLICANT_STATE_CHANGED_ACTION)); 

đâu DisconnectWifi chỉ là một lớp học nhỏ mở rộng BroadcastReceiver:

public class DisconnectWifi extends BroadcastReceiver { 

    @Override 
    public void onReceive(Context c, Intent intent) { 
     if(!intent.getParcelableExtra(wifi.EXTRA_NEW_STATE).toString().equals(SupplicantState.SCANNING)) wifi.disconnect(); 
     } 
    } 
+0

Bạn chỉ cần hai dòng đầu tiên. – usman

+1

Điều này không thể thực hiện được nếu không cài đặt ứng dụng hoặc trở thành nhà phát triển Android? Wtf v ~ v – ThorSummoner

+0

đánh thức nhận xét của câu hỏi cổ: D - cảm giác của tôi là ngay cả khi bạn có thể ngắt kết nối theo chương trình, hệ thống sẽ ngay lập tức cố gắng kết nối lại với các mạng đã lưu! Vì bạn cần lưu một mạng để kết nối với nó, bạn chỉ có thể ngắt kết nối nếu bạn quên nó trước, đó là một NO-NO lớn, vì người dùng thậm chí không thể cấu hình mạng, sau đó anh ta không bao giờ kết nối mà không có " anh chàng CNTT ". – leRobot

Các vấn đề liên quan