asysbang

 找回密码
 立即注册
查看: 5634|回复: 0
打印 上一主题 下一主题

wifi延迟

[复制链接]

513

主题

2

好友

6404

积分

管理员

Rank: 80Rank: 80Rank: 80Rank: 80Rank: 80

最佳新人 活跃会员 热心会员 推广达人 宣传达人 灌水之王 突出贡献 优秀版主 荣誉管理 论坛元老

跳转到指定楼层
楼主
发表于 2016-8-15 17:51:07 |只看该作者 |倒序浏览
MTK  8163 板子发现每隔20秒会有一个延迟
用ping命令可以看到一个200到500ms的延迟
当屏幕灭的时候没有延迟
从log看当出现延迟的时候正好是wifi扫描列表

opt/net/wifi/service/java/com/android/server/wifi/WifiStateMachine.java

                case CMD_START_SCAN:
                    //if (DBG) {
                        loge("======================WifiStateMachine CMD_START_SCAN source " + message.arg1
                              + " txSuccessRate="+String.format( "%.2f", mWifiInfo.txSuccessRate)
                              + " rxSuccessRate="+String.format( "%.2f", mWifiInfo.rxSuccessRate)
                              + " targetRoamBSSID=" + mTargetRoamBSSID
                              + " RSSI=" + mWifiInfo.getRssi());
                    //}
                    if (message.arg1 == SCAN_ALARM_SOURCE) {
                        // Check if the CMD_START_SCAN message is obsolete (and thus if it should
                        // not be processed) and restart the scan if needed
                        boolean shouldScan =
                                mScreenOn && mWifiConfigStore.enableAutoJoinScanWhenAssociated;
                        if (!checkAndRestartDelayedScan(message.arg2,
                                shouldScan,
                                mWifiConfigStore.associatedPartialScanPeriodMilli, null, null)) {
                            messageHandlingStatus = MESSAGE_HANDLING_STATUS_OBSOLETE;
                            loge("==========WifiStateMachine L2Connected CMD_START_SCAN source "
                                    + message.arg1
                                    + " " + message.arg2 + ", " + mDelayedScanCounter
                                    + " -> obsolete");
                            return HANDLED;
                        }
                        if (mP2pConnected.get()) {
                            loge("WifiStateMachine L2Connected CMD_START_SCAN source "
                                    + message.arg1
                                    + " " + message.arg2 + ", " + mDelayedScanCounter
                                    + " ignore because P2P is connected");
                            messageHandlingStatus = MESSAGE_HANDLING_STATUS_DISCARD;
                            return HANDLED;
                        }

checkAndRestartDelayedScan  这个函数会反复的发送scan的命令,所以干掉这个逻辑就可以解决



回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

Archiver|手机版|aSys-帮 ( 京ICP备13033689号 )

GMT+8, 2024-10-5 23:25 , Processed in 0.047406 second(s), 23 queries .

Powered by Discuz! X2.5

© 2001-2012 Comsenz Inc.

回顶部