3 votes

Où puis-je trouver les paramètres de la période de balayage interne du wifi ?

J'ai déjà trouvé quelques guide en rapport avec ce sujet. Mais mon expérience est que si wifi.supplicant_scan_interval = 15
mon appareil recherche le wifi avec une période de 60s donc je ne pense pas que ce soit le bon paramètre pour cela. Avez-vous des suggestions ?
Édité : voici mon 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 : La période de balayage dépend également de la connectivité. Cela signifie que si le téléphone établit une connexion WI-FI, la période de balayage sera différente de la période de balayage du téléphone. wifi.supplicant_scan_interval . De même, lorsque le téléphone se met en veille (environ 10 minutes d'inactivité), la période de balayage est de 10 minutes.

0 votes

Regardez l'article 4 du guide que vous avez joint à votre question.

0 votes

Ai-je oublié quelque chose d'autre qui n'est pas mentionné dans ma question ?

0 votes

Êtes-vous enraciné ? Avez-vous accès à /system comme rw ? Pouvez-vous coller le contenu complet de build.prop dans cette affaire ? Votre pilote Wifi a-t-il la capacité de définir l'intervalle de balayage via build.prop ? Aussi, point à retenir Il est préférable d'utiliser 60 secondes au lieu de 15 secondes, ce qui sollicite moins la batterie !

1voto

Nick Pierpoint Points 7976

Cette propriété est obtenue lors de la construction et est extrêmement dépendante du pilote wifi. Pour chaque arborescence de périphériques intégrée à la construction d'Android, il existe ce qu'on appelle une superposition cette superposition peut contenir des éléments supplémentaires relatifs à l'appareil en question.

En fait, il s'agit plutôt d'un document XML qui est analysé pendant la construction et qui "recouvre" ou "écrase" les paramètres par défaut d'Android, comme la vitesse d'animation, etc.

Cette information pertinente provient de l'appareil. overlay/frameworks/base/core/res/res/values/config.xml qui contient la ligne très exacte :

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

De là, c'est dire à la construction, de dire, que la propriété wifi.supplicant_scan_interval est prise en charge et peut être utilisée de manière dynamique à partir de l'application build.prop trouvé dans le fichier /system qui, à son tour, est lu à partir de l'exécutable binaire natif d'Android. wpa_supplicant .

Cependant, il faut dire que cela dépend du pilote Wifi qui le prend en charge, et du degré d'intégration de la fonctionnalité Wifi dans les cadres. Pour trouver la source exacte, vous pouvez consulter external/wpa_supplicant/wpa_supplicant.c , autour des lignes 2459 :

#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

par défaut ici sur Gingerbread est de 5 secondes, encore une fois le kilométrage variera en fonction de la version de l'ordinateur. wpa_supplicant utilisé, il y avait deux versions, wpa_supplicant_6 qui était cassé sous ICS, et la version plus récente wpa_supplicant_8 Malgré cela, il se peut qu'il ne soit plus pris en charge avec les nouvelles versions.

0 votes

Merci pour cette réponse détaillée ! Cependant, je ne trouve pas les fichiers que vous mentionnez : quel est le chemin exact vers le fichier .c et .xml ? J'utilise l'explorateur de racine, mais il n'y a pas de dossier overlay/ ni de dossier external/ dans la racine.

0 votes

Il se trouve dans le code source AOSP, vous ne le trouverez pas dans la ROM Android que vous avez actuellement dans votre appareil, les détails mentionnés ci-dessus seraient si et quand la source AOSP est tirée vers le bas sur votre machine avant de construire Android.

0 votes

Ce que je comprends, c'est que la période de balayage Wifi peut être de 60s même si wifi.supplicant_scan_interval = 15. Et je ne peux pas le vérifier, juste mesurer le temps exact ?

androidalle.com

AndroidAlle est une communauté de androiders où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X