Gibt es eine Möglichkeit, WiFi-Scan-Intervalle in Android explizit zu steuern?

Ich mache gerade meine Masterarbeit über WiFi-Ortung und um meine Algorithmen zu testen, musste ich einige Daten sammeln.

Zu diesem Zweck habe ich ein kurzes und sehr einfaches Programm für Android geschrieben, das einfach die RSSI für alle verfügbaren Zugriffspunkte, die bei jedem Scan gefunden wurden, sammelt und in einer Datei speichert. Ich habe einen eingerichtetBroadcastReceiver das hört auf das EreignisWifiManager.SCAN_RESULTS_AVAILABLE_ACTION und ich benutze eineTimer, hier tim genannt, um mit aWifiManager, wie folgt wifi genannt:

tim.schedule(new TimerTask(){
        @Override
        public void run(){
            wifi.startScan();
        }
}, 0, 1000);

Das Problem, das ich jetzt habe, ist, dass die eingeleiteten Scans anscheinend nicht jede Sekunde stattfinden, auch wenn es mir gelingt, sie einzuleiten, und hin und wieder gibt es andere Scans, die von einer anderen App initiiert wurden, die ebenfalls aufgezeichnet werden.

Gibt es eine einfache Möglichkeit, in einem festgelegten Intervall zu scannen und die von einer anderen App initiierten Scans nicht zu empfangen?

Die gesamte App finden Sie aufhttps://github.com/while/RSSIMiner wenn es irgendwie hilft.

Antworten auf die Frage(1)

Ihre Antwort auf die Frage