/ / APIs reagieren nicht schnell, wenn APP Multipeer Connectivity Framework verwendet - IOS, API, AFNETworking, Multipeer-Konnektivität

APIs reagieren nicht schnell, wenn APP Multipleer Connectivity Framework verwendet - ios, api, afnetworking, multipeer-connectivity

Ich verwende das Multipeer Connectivity Framework in meinemAPP und es funktioniert absolut in Ordnung, aber wenn APP eine API aufruft oder Dateien vom Server herunterlädt, verzögert dies die Antwort. Manchmal ist es fehlgeschlagen und manchmal bekomme ich einen Timeout-Fehler.

Ich habe auch den Status "Netzwerk" in xCode geprüftdebug navigator und stellte fest, dass die Geschwindigkeit sofort auf und ab geht und nie über 6 kb / s hinausgeht und manchmal als 0 kb / s angezeigt wird, aber wenn ich Multipeer-Konnektivität deaktiviere, dann funktioniert es gut und die Geschwindigkeit geht mit 70 kb / s.

Ich habe auch bemerkt, dass, wenn Bluetooth eingeschaltet ist, dies nicht mit dem WLAN geschieht.

Jeder Vorschlag wäre wirklich wertvoll.

Antworten:

0 für die Antwort № 1

Dies geschieht, weil, wenn Werbung, Multipeer wirbt immer im WLAN (es gibt keine Möglichkeit, nur Bluetooth zu sagen) Umschalten des WLAN-Zugriffsmodus mehrmals pro Sekunde in Adhoc Um andere Peers zu finden, wechseln Sie wieder in den AP-Modus (dh setzen Sie die Verbindung zu Ihrem WLAN-Router fort). Das zu tun ist sehr störend bis große Transfers.

Sie haben zwei Möglichkeiten, dies zu beheben:

1) sobald Sie sich erreichen können, rufen Sie an stopAdvertising(). Dadurch wird verhindert, dass der WLAN-Modus ständig geändert wird, und der Durchsatz wird wieder normal fortgesetzt. Achtung: Sie können dies nicht per Mikromanagement durchführen, da es nach dem Anruf bis zu 30 Sekunden dauert stopAdvertising() bis es wirksam wird

2) Wechseln Sie vom Multipeer zu einem alternativen Framework, in dem Sie nur Bluetooth angeben können und nur Bluetooth verwenden. Ich habe einen gerufen BluePeer die ich in meinen Apps verwende. Es ist Unicast (kein Multicast) und unterstützt Rollen wie Client / Server (sowie Rollenlose wie Multipeer).