- 注册时间
- 2013-4-19
- 最后登录
- 2024-9-26
- 阅读权限
- 200
- 积分
- 6404
- 精华
- 0
- 帖子
- 640
|
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的命令,所以干掉这个逻辑就可以解决
|
|