2016-11-25 13 views
0

WPS 프로토콜을 사용하여 프로그래밍 방식으로 Wi-Fi에 연결할 수있는 방법은 무엇입니까? WEP, WPA 및 Wifi와 연결하는 방법을 찾았지만 WPS와 연결되는 방법을 찾지 못했습니다 ...Android에서 프로그래밍 방식으로 WPS 연결?

감사합니다!

편집 Greg432

나는이 코드를 시도해야하지만, 솔루션을 작동하지 않습니다의 답변 AFTER?

if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.LOLLIPOP) { 

       wpsInfo = new WpsInfo(); 
       wpsInfo.BSSID = wifiList.get(0).BSSID; 
       wpsInfo.pin = "11883737"; 
       wpsInfo.setup = 0; 


       wpsCallback = new WifiManager.WpsCallback() { 
        @Override 
        public void onStarted(String pin) { 
         Toast.makeText(getApplicationContext(), "Started wps connection.", Toast.LENGTH_SHORT).show(); 
        } 

        @Override 
        public void onSucceeded() { 
         Toast.makeText(getApplicationContext(), "Connected!", Toast.LENGTH_SHORT).show(); 
        } 

        @Override 
        public void onFailed(int reason) { 
         String errorMessage; 
         switch (reason) { 
          case WifiManager.WPS_OVERLAP_ERROR: 
           errorMessage = "WPS_OVERLAP_ERROR"; 
           break; 
          case WifiManager.WPS_WEP_PROHIBITED: 
           errorMessage = "WPS_WEP_PROHIBITED"; 
           break; 
          case WifiManager.WPS_TKIP_ONLY_PROHIBITED: 
           errorMessage = "WPS_WEP_PROHIBITED"; 
           break; 
          /*case WifiManager.IN_PROGRESS: 
           mWifiManager.cancelWps(null); 
           startWps(); 
           return;*/ 
          case WifiManager.WPS_TIMED_OUT: 
           errorMessage = "WPS_TIMED_OUT"; 
           //startWps(); 
           return; 
          default: 
           errorMessage = "Generic error."; 
           break; 
         } 

         Toast.makeText(getApplicationContext(), errorMessage, Toast.LENGTH_SHORT).show(); 
        } 
       }; 

       wifiManager.startWps(wpsInfo, wpsCallback); 
} 

답변

1

사용 WifiManager의 startWps() 메소드 :

mWifiManager.startWps(wpsConfig, mWpsCallback); 

당신은 구성 및 콜백을 전달해야합니다.

https://android.googlesource.com/platform/packages/apps/TvSettings/+/lollipop-wear-release/Settings/src/com/android/tv/settings/connectivity/WpsConnectionActivity.java

+0

안녕! 대답 해 주셔서 감사합니다. 코드를 작성하려고했지만 제대로 작동하지 않습니다 ... 볼 수 있습니까? –