Wo finde ich die Einstellungen für den Zeitraum für den internen WLAN-Scan?

Dazu habe ich schon einige Anleitungen gefunden . Aber meine Erfahrung ist, dass, wenn wifi.supplicant_scan_interval = 15
mein Gerät mit 60 Sekunden nach WLAN sucht, ich nicht glaube, dass dies der richtige Parameter dafür ist. Irgendwelche Vorschläge?
Bearbeitet: hier ist meine build.prop:

# begin build properties
# autogenerated by buildinfo.sh
ro.build.id=GRK39F
ro.build.display.id=GRK39F
ro.build.version.incremental=eng.paul.30092011.041430
ro.build.version.sdk=10
ro.build.version.codename=REL
ro.build.version.release=2.3.6
ro.build.date=Fri Aug 30 04:14:55 EDT 2011
ro.build.date.utc=0
ro.build.type=user
ro.build.user=paul
ro.build.host=paul-VM
ro.build.tags=test-keys
ro.product.model=U20i
ro.product.brand=Sony Ericsson
ro.product.name=mimmi
ro.product.device=mimmi
ro.product.board=mimmi
ro.product.cpu.abi=armeabi-v6l
ro.product.cpu.abi2=armeabi
ro.product.manufacturer=Sony Ericsson
ro.product.locale.language=en
ro.product.locale.region=US
ro.wifi.channels=14
ro.board.platform=msm7k
# ro.build.product is obsolete; use ro.product.device
ro.build.product=mimmi
# Do not try to parse ro.build.description or .fingerprint
ro.build.description=passion-user 2.3.6 GRK39F 189904 release-keys
ro.build.fingerprint=google/passion/passion:2.3.6/GRK39F/189904:user/release-keys
# end build properties

#
# ADDITIONAL_BUILD_PROPERTIES
#
keyguard.no_require_sim=true
ro.ril.hsxpa=2
ro.ril.hsupa.category=5
ro.ril.def.agps.mode=2
ro.media.dec.jpeg.memcap=20000000
rild.libpath=/system/lib/libril-qc-1.so
rild.libargs=-d /dev/smd0
wifi.interface=wlan0
wifi.supplicant_scan_interval=15
ro.ril.def.agps.mode=2
ro.ril.def.agps.feature=1
ro.opengles.version=131072
ro.com.google.locationfeatures=1
ro.com.google.networklocation=1
ro.ril.enable.a52=1
ro.ril.enable.a53=1
ro.media.enc.file.format=3gp,mp4
ro.media.enc.vid.codec=m4v,h263
ro.media.enc.vid.h263.width=176,640
ro.media.enc.vid.h263.height=144,480
ro.media.enc.vid.h263.bps=64000,1600000
ro.media.enc.vid.h263.fps=1,30
ro.media.enc.vid.m4v.width=176,640
ro.media.enc.vid.m4v.height=144,480
ro.media.enc.vid.m4v.bps=64000,1600000
ro.media.enc.vid.m4v.fps=1,30
ro.media.dec.aud.wma.enabled=1
ro.media.dec.vid.wmv.enabled=1
ro.media.dec.aud.divx.enabled=1
ro.media.dec.vid.xvid.enabled=1
settings.display.autobacklight=0
media.stagefright.enable-player=true
media.stagefright.enable-meta=true
media.stagefright.enable-scan=true
media.stagefright.enable-http=true
keyguard.no_require_sim=true

#MT and LCD
ro.sf.lcd_density=120
qemu.sf.lcd_density=120
ro.product.multi_touch_enabled=true
ro.product.max_max_num_touch=2

dalvik.vm.execution-mode=int:jit
dalvik.vm.heapsize=32m
ro.compcache.default=0
ro.rommanager.developerid=cyanogenmod
ro.url.legal=http://www.google.com/intl/%s/mobile/android/basic/phone-legal.html
ro.url.legal.android_privacy=http://www.google.com/intl/%s/mobile/android/basic/privacy.html
ro.com.google.clientidbase=android-sonyericsson
ro.com.android.wifi-watchlist=GoogleGuest
ro.setupwizard.enterprise_mode=1
ro.com.android.dateformat=MM-dd-yyyy
ro.com.android.dataroaming=false
ro.config.ringtone=MiniCM7Pro.mp3
ro.config.notification_sound=DontPanic.ogg
ro.config.alarm_alert=alarm.ogg
ro.modversion=MiniCM7 Pro V16 Pre-Final
ro.setupwizard.mode=OPTIONAL
net.bt.name=Android
dalvik.vm.stack-trace-file=/data/anr/traces.txt

#SEMC
persist.service.xloud.enable=1
persist.service.swiqi.enable=1
ro.semc.timescape_keys=Sony_Ericsson_Xperia
ro.semc.sound_effects_enabled=true
ro.semc.xloud.supported=true
ro.service.swiqi.supported=true
ro.semc.batt.capacity=950
ro.semc.batt.test.consumption=150
ro.semc.batt.test.z_threshold=50
ro.semc.batt.test.min_level=60

Edit2: Die Scandauer hängt auch von der Konnektivität ab. Das heißt, wenn das Telefon eine WI-FI-Verbindung herstellt, unterscheidet sich die Scan-Periode von der wifi.supplicant_scan_interval. Auch wenn das Telefon in den Ruhezustand wechselt (ca. 10 Minuten Inaktivität), beträgt die Scandauer 10 Minuten.

Sehen Sie sich Beitrag Nr. 4 dieses Leitfadens an, den Sie Ihrer Frage beigefügt haben.
Habe ich noch etwas übersehen, das in meiner Frage nicht erwähnt wurde?
Bist du verwurzelt? Hast du Zugriff auf /systemas rw? Können Sie build.prophier den vollständigen Inhalt von einfügen? Kann Ihr WLAN-Treiber das Scan-Intervall über festlegen build.prop? Denken Sie auch daran , dass 60 Sekunden besser und weniger anstrengend für die Batterie sind als 15 Sekunden!
@t0mm13b Ja, das Telefon ist gerootet, build.prop wird hinzugefügt. Eigentlich schreibe ich eine App mit WLAN und habe die Scan-Periode gemessen, die 60 Sekunden betrug. Ja, es ist besser als 15, aber ich würde gerne wissen, woher diese 60er kommen. Danke

Antworten (1)

Diese Eigenschaft stammt aus der Build-Zeit und ist extrem abhängig vom WLAN-Treiber. Für jeden einzelnen Gerätebaum, der in den Build von Android integriert wird, gibt es ein sogenanntes Overlay . Dieses Overlay kann Extras enthalten, die sich auf das besagte Gerät beziehen in Frage.

Tatsächlich handelt es sich eher um ein XML-Dokument, das während des Erstellens analysiert wird und die standardmäßigen Android-Standardeinstellungen wie Animationsgeschwindigkeit usw. "überlagert" oder "überschreibt".

Diese einschlägigen Informationen dazu stammen aus dem Gerät, overlay/frameworks/base/core/res/res/values/config.xmldas die sehr genaue Zeile enthält:

<!-- Boolean indicating whether the wifi chipset has background scan support -->
<bool translatable="false" name="config_wifi_background_scan_support">true</bool>

Daraus lässt sich dem Build mitteilen, dass die Eigenschaft wifi.supplicant_scan_intervalunterstützt wird und dynamisch von der build.propim /systemVerzeichnis gefundenen Datei verwendet werden kann, die wiederum aus der nativen ausführbaren Binärdatei von Android gelesen wird wpa_supplicant.

Es muss jedoch gesagt werden, dass es vom WLAN-Treiber abhängt, der dies unterstützt, und wie viel Integration der WLAN-Funktionalität innerhalb der Frameworks ist. Die genaue Quelle finden Sie in external/wpa_supplicant/wpa_supplicant.c, um die Zeilen 2459 herum:

#ifdef ANDROID
    char scan_prop[PROPERTY_VALUE_MAX];
    char *endp;
    if (property_get("wifi.supplicant_scan_interval", scan_prop, "5") != 0) {
        wpa_s->scan_interval = (int)strtol(scan_prop, &endp, 0);
        if (endp == scan_prop) {
            wpa_s->scan_interval = 5;
        }
    }
#endif

Der Standardwert hier bei Gingerbread ist 5 Sekunden, auch hier variiert die Laufleistung je nach wpa_supplicantverwendeter Version, es gab zwei Versionen, wpa_supplicant_6die unter ICS defekt waren, und die neuere Version wpa_supplicant_8, obwohl dies gesagt wurde, wird sie möglicherweise jetzt mit den neueren Versionen nicht mehr unterstützt .

Danke für die ausführliche Antwort! Ich kann diese von Ihnen erwähnten Dateien jedoch nicht finden: Wie lautet also der genaue Pfad zur .c-Datei und zur .xml-Datei? Ich verwende den Root-Explorer, aber kein Overlay/ und keinen External/-Ordner im Root
Es befindet sich im AOSP-Quellcode, Sie werden es nicht im Android-ROM finden, das Sie derzeit in Ihrem Mobilteil haben. Die oben genannten Details wären, ob und wann die AOSP-Quelle vor dem Erstellen von Android auf Ihren Computer heruntergezogen wird.
Was ich also verstehe, ist, dass die Zeit für den WLAN-Scan 60 Sekunden betragen kann, sogar wifi.supplicant_scan_interval = 15. Und ich kann es nicht überprüfen, nur die genaue Zeit messen?
Wenn build.propdiese Eigenschaft vorhanden ist, aber für diesen angegebenen Zeitraum nicht tatsächlich gescannt wird, wird die ausführbare Binärdatei in Android wpa_supplicantnicht gepatcht, um diese Eigenschaft aus lesen zu können build.prop. Übrigens , um es klar zu machen, seine angegebene Build-Zeit- Bedeutung vor dem Kompilieren von Android, worauf meine Antwort hinweist.
Wenn dies der Fall ist, kann ich den Scanzeitraum nicht ändern, oder?
Das hängt davon ab, ob die ausführbare Android-Binärdatei wpa_supplicantgepatcht ist oder nicht! Soweit Sie wissen, könnte es ignoriert werden und sich nicht darum kümmern, ob es in der build.prop... :)
Da meine Einstellungen 15 sind, aber der tatsächliche Wert 60 ist, gehe ich davon aus, dass ich ihn nicht ändern kann - habe ich recht? Fragen Sie noch einmal, oder vielleicht sollte ich versuchen, auf 30 zu ändern, und sehen, was passiert.
Angenommen, die Binärdatei ist nicht gepatcht, dann können Sie sie nicht ändern.
und die einzige Möglichkeit, herauszufinden, ob gepatcht ist oder nicht, besteht darin, zu versuchen, den Zeitraum über zu ändern wifi.supplicant_scan_interval, oder? - letzte Frage
Versuch es! :) Eine Sache, wenn Sie sehen, dass es nicht funktioniert, dann erstellen Sie eine Sicherungskopie der Binärdatei, wenn Sie beabsichtigen, sie beispielsweise von einem anderen ROM an einen anderen Ort zu kopieren , könnte dies die WLAN-Funktionalität aufgrund dieser Binärdatei beeinträchtigen, ohne es zu wissen wie Sie das WLAN aufrufen, da der Chipsatztreiber möglicherweise nicht darin kompiliert ist, basierend auf dem tatsächlichen WLAN-Chipsatz, der in Ihrem Gerät verwendet wird!