[완료]안드로이드에서 와이파이 코딩 질문좀 드리겠습니다..

eoen2eoen의 이미지

일단 스캔 후 리스트뷰에 넣어서 원하는 와이파이 ap에 접속하는 방법은 어떻게 구현을 햇는데..

문제는 틀린 비밀번호를 넣었을 경우 무슨 값을 리턴하는지를 전혀 모르겠습니다..

아무리 해봐도 잘 안되서... 고수님들의 조언을 듣고자 이렇게 글써봅니다..

shint의 이미지

WPS_AUTH_FAILURE. ERROR_AUTHENTICATING. WifiManager.WpsCallback. PasswordCallback. LoginException.
DeviceAdminReceiver. ACTION_PASSWORD_FAILED. org.apache.http.auth.

이런 단어들이 눈에 띕니다. 이중에 하나가 가능성이 있지 않을까 생각됩니다.

EXTRA_NETWORK_INFO
EXTRA_PREVIOUS_WIFI_STATE
EXTRA_WIFI_STATE
updateNetwork()

이것저것 확인해 봐야 알것 같습니다.

http://andre-world.tistory.com/6
여기 소스에서 처럼. Rece 받는곳에서 처리하는 방식이 있지 않을까 생각됩니다.

http://developer.android.com/reference/android/net/wifi/package-summary.html
android.net.wifi

http://developer.android.com/intl/ko/reference/android/net/wifi/WifiManager.WpsCallback.html
WifiManager.WpsCallback
The reason for failure could be one of WPS_TKIP_ONLY_PROHIBITED, WPS_OVERLAP_ERROR, WPS_WEP_PROHIBITED, WPS_TIMED_OUT or WPS_AUTH_FAILURE and some generic errors.

http://developer.android.com/reference/android/net/wifi/WifiManager.html
Develop - Reference - WifiManager
int WPS_AUTH_FAILURE Authentication failure on WPS

http://developer.android.com/reference/android/net/wifi/WifiManager.html#ERROR_AUTHENTICATING
ERROR_AUTHENTICATING

http://developer.android.com/intl/ko/reference/android/net/wifi/WifiManager.html#updateNetwork(android.net.wifi.WifiConfiguration)
public int updateNetwork (WifiConfiguration config)

http://developer.android.com/intl/ko/reference/javax/security/auth/login/package-summary.html
javax.security.auth.login
LoginException Base class for exceptions that are thrown when a login error occurs.

http://developer.android.com/intl/ko/reference/javax/security/auth/callback/PasswordCallback.html
PasswordCallback
java.lang.Object
↳ javax.security.auth.callback.PasswordCallback

http://developer.android.com/intl/ko/reference/android/app/admin/package-summary.html

http://developer.android.com/intl/ko/reference/android/app/admin/DeviceAdminInfo.html
http://developer.android.com/intl/ko/reference/android/app/admin/DevicePolicyManager.html
http://developer.android.com/intl/ko/reference/android/app/admin/DeviceAdminReceiver.html
DeviceAdminReceiver
String ACTION_PASSWORD_FAILED Action sent to a device administrator when the user has failed at attempted to enter the password.

http://developer.oesf.biz/em/developer/reference/durian/android/app/admin/DeviceAdminReceiver.html
Class DeviceAdminReceiver

http://developer.android.com/intl/ko/reference/java/security/package-summary.html

http://developer.android.com/intl/ko/reference/java/util/logging/package-summary.html

void onPasswordFailed(Context context, Intent intent)
Called after the user has failed at entering their current password, as a result of receiving ACTION_PASSWORD_FAILED.

http://developer.android.com/intl/ko/reference/org/apache/http/auth/package-summary.html
org.apache.http.auth

http://developer.android.com/reference/android/net/wifi/WifiManager.MulticastLock.html
WifiManager.MulticastLock
public void setReferenceCounted (boolean refCounted)
참조 카운터로 확인이 가능할지도 ??

----------- 여기부터는 참고용 링크 --------------------------
http://f7key.tistory.com/19
안드로이드 3G WIFI 확인 - 변두리 프로그래머

http://android.stackexchange.com/questions/21296/how-can-i-find-a-saved-wi-fi-password
How can I find a saved Wi-Fi password?

https://www.whitebyte.info/android/android-wifi-hotspot-manager-class
Android Wifi Hotspot Manager Class

http://www.programcreek.com/java-api-examples/index.php?api=android.net.wifi.WifiConfiguration
Java Code Examples for android.net.wifi.WifiConfiguration

http://stackoverflow.com/questions/4374862/how-to-programatically-create-and-read-wep-eap-wifi-configurations-in-android/4375874#4375874
How to programatically create and read WEP/EAP WiFi configurations in Android?

http://stackoverflow.com/questions/20847949/programmatically-get-connected-wifi-password
Programmatically get connected Wifi password?

http://www.tutorialspoint.com/android/android_wi_fi.htm
Android Wi-Fi Tutorial

http://rerethink.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-wifi-%EA%B4%80%EB%A0%A8-%EB%A9%94%EC%86%8C%EB%93%9C
[안드로이드] wifi 관련 메소드(wifi 상태확인, wifi 주소)

http://rerethink.tistory.com/entry/%EC%95%88%EB%93%9C%EB%A1%9C%EC%9D%B4%EB%93%9C-api-WiFi-%EB%84%A4%ED%8A%B8%EC%9B%8C%ED%81%AC-%EA%B0%90%EC%8B%9C-%EB%B0%8F-%EC%B2%98%EB%A6%AC%EB%A3%A8%ED%8B%B4
[안드로이드 api] WiFi 네트워크 감시 및 처리루틴

https://github.com/nickrussler/Android-Wifi-Hotspot-Manager-Class
nickrussler/Android-Wifi-Hotspot-Manager-Class

http://stackoverflow.com/questions/3437694/how-to-get-the-connection-strength-of-wifi-access-points
How to get the connection strength of Wifi access points?

https://developer.mozilla.org/en-US/docs/Web/API/WifiManager/associate
WifiManager.associate()

http://stackoverflow.com/questions/3841317/how-to-see-if-wifi-is-connected-in-android
how to see if wifi is connected in android

https://android.googlesource.com/platform/frameworks/base/+/lollipop-release/wifi/java/android/net/wifi/WifiManager.java

https://searchcode.com/codesearch/view/18554524/
firefox /firefox-14.0.1/mozilla-release/dom/wifi/DOMWifiManager.js

https://developer.mozilla.org/en-US/docs/Web/API/WifiManager/getKnownNetworks
WifiManager.getKnownNetworks()

https://developer.mozilla.org/en-US/docs/Web/API/WifiManager
WifiManager

https://developer.mozilla.org/en-US/docs/Web/API/WiFi_Information_API
WiFi Information API

https://www.acrylicwifi.com/en/support/acrylic-api-for-developers/wlan-password-generator-api/
WLAN password generator API

http://stackoverflow.com/questions/7439758/wifi-password-how-is-it-stored-and-where
WiFi Password: how is it stored and where?

이건 윈도우용
https://msdn.microsoft.com/en-us/library/windows/desktop/dd941811(v=vs.85).aspx
WCN_VALUE_TYPE_CONFIGURATION_ERROR enumeration

http://www.codeproject.com/Articles/35329/How-to-access-wireless-network-parameters-using-na
How to access wireless network parameters using native WiFi API

https://msdn.microsoft.com/en-us/library/windows/desktop/aa816369(v=vs.85).aspx
Native Wifi API Sample

구글과 자바스크립트 JWT. 자바 SWT.형식과 유사합니다.
https://developers.google.com/wallet/instant-buy/web/api-reference
Google Wallet Instant Buy APIs - Instant Buy for Web API Reference

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

eoen2eoen의 이미지

아무래도 여기엔 제가 원하는 답은 없는거 같습니다 ㅠ_ㅠ
고생해서 찾아주셨는데.. 괜히 죄송하네요..

아무튼 답변 감사합니다..

p.s wpa_supplicant 라는 태그로 auth_failure가 뜨긴 하네요... 이걸 어떻게 하면 될꺼같은데.. 하
입문자에겐 여간 어려운게 아니네요..ㅠㅠ

shint의 이미지


또. 찾아보니 WiFi 에 구조와 WiFiMonitor. WiFiWatchDog. 등도 있네요. ㅇ_ㅇ;;

Android WiFi Architecture (WEXT/NL80211)
https://mitulmodi.wordpress.com/2012/03/21/android-wifi-architecture-wext/

Wi-Fi Monitoring Software - WirelessMon
http://blog.tanaza.com/blog/bid/252628/Wi-Fi-Monitoring-Software-WirelessMon

[버섯][추천][펌] Realtek Wi-Fi Direct Programming Guide
http://yoo7577.tistory.com/182

http://spacehopper.org/mirrors/www.geocities.com/backgndtest/wlan_tut.html

WifiDocs/WPAHowTo
https://help.ubuntu.com/community/WifiDocs/WPAHowTo

ubuntu (linux)에서 무선랜의 WPA 인증 이용하기
http://ymkimit.blogspot.kr/2013/05/ubuntu-linux-wpa.html

기본 드라이버는 wext입니다
드라이버가 맞지 않으면 다음과 같은 에러가 나옵니다.
"WPA: 4-Way Handshake failed"

Linux WPA/WPA2/IEEE 802.1X Supplicant - 소스도 있습니다.
http://w1.fi/wpa_supplicant/

----------------------------------------------------------------------------
젊음'은 모든것을 가능하게 만든다.

매일 1억명이 사용하는 프로그램을 함께 만들어보고 싶습니다.
정규 근로 시간을 지키는. 야근 없는 회사와 거래합니다.

각 분야별. 좋은 책'이나 사이트' 블로그' 링크 소개 받습니다. shintx@naver.com

eoen2eoen의 이미지

답변 감사합니다..

사실 몇주전에 이부분은 그냥 타이머를 그냥 걸어서 오래걸리면 취소되게끔 했는데
확인을 이제서야 하네요 ㅠ_ㅠ

링크들 다시 봐봐야겠네요
감사합니다 ㅎㅎ

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

BBCode

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param>
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.

Textile

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • You can use Textile markup to format text.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Markdown

  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • Quick Tips:
    • Two or more spaces at a line's end = Line break
    • Double returns = Paragraph
    • *Single asterisks* or _single underscores_ = Emphasis
    • **Double** or __double__ = Strong
    • This is [a link](http://the.link.example.com "The optional title text")
    For complete details on the Markdown syntax, see the Markdown documentation and Markdown Extra documentation for tables, footnotes, and more.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>

Plain text

  • HTML 태그를 사용할 수 없습니다.
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
  • 줄과 단락은 자동으로 분리됩니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.