Android 10 와 이 파이 자동 연결 문제 해결
본 고 는 코드 를 스 캔 한 후에 와 이 파 이 를 자동 으로 연결 하 는 처 리 를 설명 한다.스 캔 의 절차 가 상대 적 으로 간단 하고 인터넷 튜 토리 얼 도 비교적 많 으 며 현재 안 드 로 이 드 각 버 전에 도 많은 변화 가 없다.
질문 설명:
최근 프로젝트 를 진행 하 던 중 이전 프로젝트 에 QR 코드 를 스 캔 해 와 이 파 이 를 자동 으로 연결 하 는 기능 이 있 었 고,장치 가 QR 코드 를 생 성 하 는 방식 을 바 꾼 뒤 휴대 전화 가 와 이 파 이 를 자동 으로 연결 하지 못 하 는 것 을 발견 했다.
문제 의 원인:
코드 디 버 깅 을 통 해 발견:(나 는 모두 실제 디 버 깅)
wifiManager.addNetwork(WifiConfiguration);
와 이 파 이 를 추가 할 때 이 코드 는 항상-1 로 되 돌아 갑 니 다.동료 휴대 전화 로 신기 하 게 연결 할 수 있 습 니 다.그리고 얼굴 이 가 려 지고 갈 라 집 니 다.문제 가 있 을 까 봐 문제 가 있 을 까 봐 걱정 하지 않 습 니 다.문제 가 있 을 까 봐 걱정 합 니 다.문제 해결:
핸드폰 테스트 좁쌀 android Q(andorid 10)시스템,동료 휴대 전화 영광 android P 의 시스템,안 드 로 이 드 10 이 또 무슨 이상 한 짓 을 했 는 지 대담 하 게 추측 하 세 요.
근 인:하늘 은 마음 이 있 는 사람 을 저 버 리 지 않 고 코드 를 올 립 니 다.
/**
* Add a new network description to the set of configured networks.
* The {@code networkId} field of the supplied configuration object
* is ignored.
* <p/>
* The new network will be marked DISABLED by default. To enable it,
* called {@link #enableNetwork}.
*
* @param config the set of variables that describe the configuration,
* contained in a {@link WifiConfiguration} object.
* If the {@link WifiConfiguration} has an Http Proxy set
* the calling app must be System, or be provisioned as the Profile or Device Owner.
* @return the ID of the newly created network description. This is used in
* other operations to specified the network to be acted upon.
* Returns {@code -1} on failure.
*
* @deprecated
* a) See {@link WifiNetworkSpecifier.Builder#build()} for new
* mechanism to trigger connection to a Wi-Fi network.
* b) See {@link #addNetworkSuggestions(List)},
* {@link #removeNetworkSuggestions(List)} for new API to add Wi-Fi networks for consideration
* when auto-connecting to wifi.
* <b>Compatibility Note:</b> For applications targeting
* {@link android.os.Build.VERSION_CODES#Q} or above, this API will always return {@code -1}.
*/
@Deprecated
public int addNetwork(WifiConfiguration config) {
if (config == null) {
return -1;
}
config.networkId = -1;
return addOrUpdateNetwork(config);
}
이것 은 WifiManager.class 에서 addNetwork 방법 에 대한 설명 입 니 다.주석 의 마지막 줄 에 주의 하 십시오.{@link android.os.Build.VERSION_CODES#Q} or above, this API will always return {@code -1}.
android Q 또는 더 높 은 버 전,이 방법 은 처음부터 끝까지-1 로 돌아 갑 니 다.이 문제 의 원인 분석 이 끝 났 습 니 다.그 다음 에 해결 을 시작 합 니 다.홈 페이지 의 한 번 조작:Android 10 의 새로운 방안 은 다음 과 같다.
코드 는 다음 과 같 습 니 다:
public void test()
{
if (android.os.Build.VERSION.SDK_INT >= android.os.Build.VERSION_CODES.Q)
{
NetworkSpecifier specifier =
new WifiNetworkSpecifier.Builder()
.setSsidPattern(new PatternMatcher(" WiFi ", PatternMatcher.PATTERN_PREFIX))
.setWpa2Passphrase(" WiFi ")
.build();
NetworkRequest request =
new NetworkRequest.Builder()
.addTransportType(NetworkCapabilities.TRANSPORT_WIFI)
.removeCapability(NetworkCapabilities.NET_CAPABILITY_INTERNET)
.setNetworkSpecifier(specifier)
.build();
ConnectivityManager connectivityManager = (ConnectivityManager)
context.getSystemService(Context.CONNECTIVITY_SERVICE);
ConnectivityManager.NetworkCallback networkCallback = new ConnectivityManager.NetworkCallback() {
@Override
public void onAvailable(Network network) {
// do success processing here..
}
@Override
public void onUnavailable() {
// do failure processing here..
}
};
connectivityManager.requestNetwork(request, networkCallback);
// Release the request when done.
// connectivityManager.unregisterNetworkCallback(networkCallback);
}
}
주:저 는 WPA 를 사용 합 니 다. 암호 화 모드,직접 측정 가능.여기 서 끝나 면 꽃 을 뿌 려 라.안 드 로 이 드 10 자동 연결 와 이 파이 문제 해결 에 관 한 이 글 은 여기까지 소개 되 었 습 니 다.더 많은 안 드 로 이 드 10 자동 연결 와 이 파이 내용 은 예전 의 글 을 검색 하거나 아래 의 관련 글 을 계속 찾 아 보 세 요.앞으로 도 많은 응원 부탁드립니다!
이 내용에 흥미가 있습니까?
현재 기사가 여러분의 문제를 해결하지 못하는 경우 AI 엔진은 머신러닝 분석(스마트 모델이 방금 만들어져 부정확한 경우가 있을 수 있음)을 통해 가장 유사한 기사를 추천합니다:
Android 10도 클립보드를 쓰고 싶어요.화면을 시작할 때 클립보드를 검색하려면 onResume 등에서 ClipboardManager를 호출해서 검색합니다. MainActivity.kt 하지만 안드로이드 10에서 위와 같은 방법으로 클립보드의 내용을 얻으려...
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
CC BY-SA 2.5, CC BY-SA 3.0 및 CC BY-SA 4.0에 따라 라이센스가 부여됩니다.