Czy istnieje sposób na zapomnienie starych połączeń WiFi Direct (w kodzie)? Potrzebuję tego, aby zmienić właściciela grupy. Ustawiam groupOwnerIntent = 15, ale nie zostanę właścicielem grupy.Zapominając o starych WiFi Bezpośrednie połączenia
5
A
Odpowiedz
1
Jeśli chcesz po prostu zignorować istniejące połączenie WiFiP2p, po prostu zadzwoń pod numer WiFiP2pManager#removeGroup
. Nie ma znaczenia urządzenie GO lub peer.
Jeśli mówisz o zapominaniu o upartych grupach - możesz je również usunąć. Ale można to osiągnąć jedynie poprzez refleksję. I bez względu na to urządzenie GO lub peer.
manager.removeGroup(channel, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
Log.d(TAG, "removeGroup success");
deletePersistentGroup(group);
}
@Override
public void onFailure(int reason) {
Log.d(TAG, "removeGroup fail: " + reason);
}
});
Gdzie manager
jest instancją WiFip2pManager. I deletePersistanteGroup(WiFiP2pGroup group)
jest:
private void deletePersistentGroup(WifiP2pGroup wifiP2pGroup) {
try {
Method getNetworkId = WifiP2pGroup.class.getMethod("getNetworkId");
Integer networkId = (Integer) getNetworkId.invoke(wifiP2pGroup);
Method deletePersistentGroup = WifiP2pManager.class.getMethod("deletePersistentGroup",
WifiP2pManager.Channel.class, int.class, WifiP2pManager.ActionListener.class);
deletePersistentGroup.invoke(manager, channel, networkId, new WifiP2pManager.ActionListener() {
@Override
public void onSuccess() {
Log.e(TAG, "deletePersistentGroup onSuccess");
}
@Override
public void onFailure(int reason) {
Log.e(TAG, "deletePersistentGroup failure: " + reason);
}
});
} catch (NoSuchMethodException e) {
Log.e("WIFI", "Could not delete persistent group", e);
} catch (InvocationTargetException e) {
Log.e("WIFI", "Could not delete persistent group", e);
} catch (IllegalAccessException e) {
Log.e("WIFI", "Could not delete persistent group", e);
}
}
UPD
Aby stał się GO należy zadzwonić WiFiP2pManager # createGroup() przed wysłaniem zaproszeń do rówieśników.
Powiązane problemy
- 1. wifi-bezpośrednie połączenie końcowe z peer na Androida?
- 2. Android test połączenia WiFi programowo
- 3. bezpośrednie połączenia z użyciem zestawu inline GCC
- 4. Połączenie GameKit WiFi?
- 5. Połączenie WiFi przez androida
- 6. Blokada WiFi nie działa, jak zapobiec oszczędzaniu energii wifi?
- 7. żywo Twitter bezpośrednie komunikaty
- 8. CookComputing.XmlRpcV2.dll Bezpośrednie pobieranie?
- 9. jQuery: Wybieranie bezpośrednie rodzeństwo
- 10. Uruchamianie i Zapominając zadanie Async w MVC Akcja
- 11. Git: zapisywanie starych gałęzi
- 12. Uzyskiwanie dostępu do informacji o iPhone WiFi za pośrednictwem SDK
- 13. Konfiguracja Wifi (ukryty SSID) na Raspbian (adapter EDIMAX Wifi)
- 14. Czy sieć WIFI direct i stacja WIFI działają jednocześnie?
- 15. Java - Wifi API
- 16. Zwiększenie szybkości skanowania WiFi
- 17. Słuchanie stan WIFI
- 18. Xpath: Elements Wybierz bezpośrednie Dziecko
- 19. Bezpośrednie generowanie określonych podzbiorów zestawu?
- 20. bezpośrednie inicjalizacji struct w C
- 21. Mixpanel - Zbiorcze usuwanie starych użytkowników
- 22. Czat Firebase - usuwanie starych wiadomości
- 23. Automatyczne usuwanie starych nagrań IntelliTrace
- 24. Usuwanie starych problemów z Xcode
- 25. Android WIFI Jak wykryć, kiedy dostępne jest konkretne połączenie WIFI
- 26. Połączenie nief WiFi z wykrywaniem telefonu
- 27. Wykrywanie usługi Android Wifi Direct Service
- 28. MonoTouch WIFI SSID
- 29. Połączenie WiFi programowalnie
- 30. Debugowanie USB przez Wifi