Sfortunatamente penso che solo Apple possa risolvere questo problema, si spera con un aggiornamento di Yosemite (che secondo come riferito è già stato testato, ma una data di rilascio è sconosciuta).
Fino ad allora, tutto ciò che posso offrire è una soluzione alternativa.
Trova la tua "porta" WiFi
Per prima cosa devi trovare la tua porta Wi-Fi. Su un MacBook Air è probabilmente en0.
Su un Mac con Ethernet e Wi-Fi integrati, il Wi-Fi è probabilmente en1
.
Se non sei sicuro, puoi usare questo:
WIFI='/usr/sbin/networksetup -listnetworkserviceorder |\
egrep Device |\
fgrep Wi-Fi |\
sed 's#.*(Hardware Port: Wi-Fi, Device: ##g ; s#)##g''
e poi fai
echo "$WIFI"
per vedere di cosa si tratta.
Utilizza il comando airport
Da Snow Leopard (almeno) c'è stato uno strumento airport
su:
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport
Chiamiamo $AIRPORT
in breve:
AIRPORT='/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport'
Quindi, se lo mettiamo insieme, questo dovrebbe essere il comando appropriato per dire al tuo Mac di unirsi al più strong segnale Wi-Fi disponibile:
${AIRPORT} ${WIFI} prefs JoinMode=Strongest JoinModeFallback=KeepLooking
che è solo un altro modo di scrivere questo:
/System/Library/PrivateFrameworks/Apple80211.framework/Versions/Current/Resources/airport en0 prefs JoinMode=Strongest JoinModeFallback=KeepLooking
Utilizza launchd
Puoi eseguire periodicamente quel comando airport
periodicamente con launchd
.
Ho messo insieme i file necessari su link ma l'idea è questa:
-
Utilizza launchd
plist in /Library/LaunchDaemons/
(che deve essere di proprietà di root: wheel)
-
Avere che launchd
plist guarda /Library/Preferences/SystemConfiguration/
per le modifiche
-
Esegui il comando precedente ogni volta che si verificano cambiamenti.
Non ho riscontrato questo problema in Yosemite, quindi non posso garantire che questo lo risolva, ma è quello che farei per risolverlo se dovesse succedere a me.
Consulta la pagina GitHub per istruzioni più dettagliate, inclusa la rimozione.