Offset 16, 15 lines modifiedOffset 16, 14 lines modified
16 import·java.util.function.Function;16 import·java.util.function.Function;
17 import·com.android.server.wifi.hotspot2.ANQPNetworkKey;17 import·com.android.server.wifi.hotspot2.ANQPNetworkKey;
18 import·com.android.server.wifi.hotspot2.Utils;18 import·com.android.server.wifi.hotspot2.Utils;
19 import·com.android.server.wifi.hotspot2.PasspointProvider;19 import·com.android.server.wifi.hotspot2.PasspointProvider;
20 import·java.util.HashSet;20 import·java.util.HashSet;
21 import·android.net.wifi.WifiInfo;21 import·android.net.wifi.WifiInfo;
22 import·com.android.server.wifi.proto.WifiStatsLog;22 import·com.android.server.wifi.proto.WifiStatsLog;
23 import·java.util.Set; 
24 import·org.json.JSONException;23 import·org.json.JSONException;
25 import·org.json.JSONArray;24 import·org.json.JSONArray;
26 import·org.json.JSONObject;25 import·org.json.JSONObject;
27 import·android.util.Base64;26 import·android.util.Base64;
28 import·com.android.wifi.x.com.google.protobuf.nano.MessageNano;27 import·com.android.wifi.x.com.google.protobuf.nano.MessageNano;
29 import·java.io.FileDescriptor;28 import·java.io.FileDescriptor;
30 import·com.android.server.wifi.hotspot2.NetworkDetail$HSRelease;29 import·com.android.server.wifi.hotspot2.NetworkDetail$HSRelease;
Offset 33, 24 lines modifiedOffset 32, 25 lines modified
33 import·com.android.server.wifi.hotspot2.NetworkDetail;32 import·com.android.server.wifi.hotspot2.NetworkDetail;
34 import·android.net.wifi.SupplicantState;33 import·android.net.wifi.SupplicantState;
35 import·com.android.wifi.x.android.hardware.wifi.supplicant.V1_0.ISupplicantStaIfaceCallback$StatusCode;34 import·com.android.wifi.x.android.hardware.wifi.supplicant.V1_0.ISupplicantStaIfaceCallback$StatusCode;
36 import·com.android.wifi.x.android.hardware.wifi.supplicant.V1_0.ISupplicantStaIfaceCallback$ReasonCode;35 import·com.android.wifi.x.android.hardware.wifi.supplicant.V1_0.ISupplicantStaIfaceCallback$ReasonCode;
37 import·android.os.RemoteException;36 import·android.os.RemoteException;
38 import·android.net.wifi.IOnWifiUsabilityStatsListener;37 import·android.net.wifi.IOnWifiUsabilityStatsListener;
39 import·com.android.server.wifi.util.MetricsUtils$GenericBucket;38 import·com.android.server.wifi.util.MetricsUtils$GenericBucket;
40 import·com.android.server.wifi.util.MetricsUtils; 
41 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiConfigStoreIO$DurationBucket;39 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiConfigStoreIO$DurationBucket;
42 import·com.android.server.wifi.proto.nano.WifiMetricsProto$NumConnectableNetworksBucket;40 import·com.android.server.wifi.proto.nano.WifiMetricsProto$NumConnectableNetworksBucket;
43 import·com.android.server.wifi.proto.nano.WifiMetricsProto$NetworkSelectionExperimentDecisions;41 import·com.android.server.wifi.proto.nano.WifiMetricsProto$NetworkSelectionExperimentDecisions;
44 import·android.util.Pair;42 import·android.util.Pair;
45 import·java.io.PrintWriter;43 import·java.io.PrintWriter;
46 import·android.util.Log;44 import·android.util.Log;
47 import·android.net.wifi.WifiUsabilityStatsEntry;45 import·android.net.wifi.WifiUsabilityStatsEntry;
48 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiUsabilityStatsEntry;46 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiUsabilityStatsEntry;
49 import·android.net.wifi.WifiConfiguration;47 import·android.net.wifi.WifiConfiguration$NetworkSelectionStatus;
 48 import·java.util.function.ToIntFunction;
 49 import·com.android.server.wifi.util.MetricsUtils;
50 import·com.android.server.wifi.proto.nano.WifiMetricsProto$PasspointProfileTypeCount;50 import·com.android.server.wifi.proto.nano.WifiMetricsProto$PasspointProfileTypeCount;
51 import·com.android.server.wifi.proto.nano.WifiMetricsProto$HealthMonitorMetrics;51 import·com.android.server.wifi.proto.nano.WifiMetricsProto$HealthMonitorMetrics;
52 import·java.util.Iterator;52 import·java.util.Iterator;
53 import·com.android.server.wifi.proto.nano.WifiMetricsProto$InitPartialScanStats;53 import·com.android.server.wifi.proto.nano.WifiMetricsProto$InitPartialScanStats;
54 import·com.android.server.wifi.proto.nano.WifiMetricsProto$ThroughputMbpsHistogram;54 import·com.android.server.wifi.proto.nano.WifiMetricsProto$ThroughputMbpsHistogram;
55 import·com.android.server.wifi.proto.nano.WifiMetricsProto$ChannelUtilizationHistogram;55 import·com.android.server.wifi.proto.nano.WifiMetricsProto$ChannelUtilizationHistogram;
56 import·com.android.server.wifi.proto.nano.WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount;56 import·com.android.server.wifi.proto.nano.WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount;
Offset 81, 14 lines modifiedOffset 81, 17 lines modified
81 import·com.android.server.wifi.proto.nano.WifiMetricsProto$RssiPollCount;81 import·com.android.server.wifi.proto.nano.WifiMetricsProto$RssiPollCount;
82 import·com.android.server.wifi.proto.nano.WifiMetricsProto$StaEvent$ConfigInfo;82 import·com.android.server.wifi.proto.nano.WifiMetricsProto$StaEvent$ConfigInfo;
83 import·java.util.BitSet;83 import·java.util.BitSet;
84 import·com.android.server.wifi.proto.nano.WifiMetricsProto$StaEvent;84 import·com.android.server.wifi.proto.nano.WifiMetricsProto$StaEvent;
85 import·com.android.server.wifi.proto.nano.WifiMetricsProto$SoftApConnectedClientsEvent;85 import·com.android.server.wifi.proto.nano.WifiMetricsProto$SoftApConnectedClientsEvent;
86 import·android.net.wifi.ScanResult;86 import·android.net.wifi.ScanResult;
87 import·android.os.Message;87 import·android.os.Message;
 88 import·com.android.server.wifi.proto.nano.WifiMetricsProto$NetworkDisableReason;
 89 import·java.util.Set;
 90 import·android.net.wifi.WifiConfiguration;
88 import·com.android.server.wifi.proto.nano.WifiMetricsProto$DeviceMobilityStatePnoScanStats;91 import·com.android.server.wifi.proto.nano.WifiMetricsProto$DeviceMobilityStatePnoScanStats;
89 import·android.util.ArrayMap;92 import·android.util.ArrayMap;
90 import·java.util.HashMap;93 import·java.util.HashMap;
91 import·java.util.ArrayList;94 import·java.util.ArrayList;
92 import·android.os.Looper;95 import·android.os.Looper;
93 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiToggleStats;96 import·com.android.server.wifi.proto.nano.WifiMetricsProto$WifiToggleStats;
94 import·com.android.server.wifi.p2p.WifiP2pMetrics;97 import·com.android.server.wifi.p2p.WifiP2pMetrics;
Offset 326, 14 lines modifiedOffset 329, 15 lines modified
326 ····private·final·WifiMetricsProto$WifiNetworkSuggestionApiLog·mWifiNetworkSuggestionApiLog;329 ····private·final·WifiMetricsProto$WifiNetworkSuggestionApiLog·mWifiNetworkSuggestionApiLog;
327 ····private·final·WifiMetrics$WifiOffMetrics·mWifiOffMetrics;330 ····private·final·WifiMetrics$WifiOffMetrics·mWifiOffMetrics;
328 ····private·final·WifiP2pMetrics·mWifiP2pMetrics;331 ····private·final·WifiP2pMetrics·mWifiP2pMetrics;
329 ····private·WifiPowerMetrics·mWifiPowerMetrics;332 ····private·WifiPowerMetrics·mWifiPowerMetrics;
330 ····private·WifiScoreCard·mWifiScoreCard;333 ····private·WifiScoreCard·mWifiScoreCard;
331 ····private·final·SparseIntArray·mWifiScoreCounts;334 ····private·final·SparseIntArray·mWifiScoreCounts;
332 ····private·int·mWifiState;335 ····private·int·mWifiState;
 336 ····private·WifiMetrics$WifiStatusBuilder·mWifiStatusBuilder;
333 ····private·final·SparseIntArray·mWifiSystemStateEntries;337 ····private·final·SparseIntArray·mWifiSystemStateEntries;
334 ····private·final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats;338 ····private·final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats;
335 ····private·final·SparseIntArray·mWifiUsabilityScoreCounts;339 ····private·final·SparseIntArray·mWifiUsabilityScoreCounts;
336 ····private·int·mWifiUsabilityStatsCounter;340 ····private·int·mWifiUsabilityStatsCounter;
337 ····private·final·LinkedList·mWifiUsabilityStatsEntriesList;341 ····private·final·LinkedList·mWifiUsabilityStatsEntriesList;
338 ····private·final·LinkedList·mWifiUsabilityStatsListBad;342 ····private·final·LinkedList·mWifiUsabilityStatsListBad;
339 ····private·final·LinkedList·mWifiUsabilityStatsListGood;343 ····private·final·LinkedList·mWifiUsabilityStatsListGood;
Offset 448, 14 lines modifiedOffset 452, 15 lines modified
448 ········this.mProbeStatusSinceLastUpdate·=·n;452 ········this.mProbeStatusSinceLastUpdate·=·n;
449 ········this.mProbeElapsedTimeSinceLastUpdateMs·=·mLastScoreNoReset;453 ········this.mProbeElapsedTimeSinceLastUpdateMs·=·mLastScoreNoReset;
450 ········this.mProbeMcsRateSinceLastUpdate·=·mLastScoreNoReset;454 ········this.mProbeMcsRateSinceLastUpdate·=·mLastScoreNoReset;
451 ········final·long·mCurrentDeviceMobilityStatePnoScanStartMs·=·(long)(-1);455 ········final·long·mCurrentDeviceMobilityStatePnoScanStartMs·=·(long)(-1);
452 ········this.mScoreBreachLowTimeMillis·=·mCurrentDeviceMobilityStatePnoScanStartMs;456 ········this.mScoreBreachLowTimeMillis·=·mCurrentDeviceMobilityStatePnoScanStartMs;
453 ········this.mStaEventList·=·new·LinkedList();457 ········this.mStaEventList·=·new·LinkedList();
454 ········this.mUserActionEventList·=·new·LinkedList();458 ········this.mUserActionEventList·=·new·LinkedList();
 459 ········this.mWifiStatusBuilder·=·new·WifiMetrics$WifiStatusBuilder(this);
455 ········this.mLastPollRssi·=·-127;460 ········this.mLastPollRssi·=·-127;
456 ········this.mLastPollLinkSpeed·=·mLastScoreNoReset;461 ········this.mLastPollLinkSpeed·=·mLastScoreNoReset;
457 ········this.mLastPollRxLinkSpeed·=·mLastScoreNoReset;462 ········this.mLastPollRxLinkSpeed·=·mLastScoreNoReset;
458 ········this.mLastPollFreq·=·mLastScoreNoReset;463 ········this.mLastPollFreq·=·mLastScoreNoReset;
459 ········this.mLastScore·=·mLastScoreNoReset;464 ········this.mLastScore·=·mLastScoreNoReset;
460 ········this.mAdaptiveConnectivityEnabled·=·(n·!=·0);465 ········this.mAdaptiveConnectivityEnabled·=·(n·!=·0);
461 ········this.mWifiLogProto·=·new·WifiMetricsProto$WifiLog();466 ········this.mWifiLogProto·=·new·WifiMetricsProto$WifiLog();
Offset 611, 26 lines modifiedOffset 616, 28 lines modified
611 ············Label_0028:·{616 ············Label_0028:·{
612 ················if·(n·==·2)·{617 ················if·(n·==·2)·{
613 ····················break·Label_0028;618 ····················break·Label_0028;
614 ················}619 ················}
615 ················try·{620 ················try·{
616 ····················//·monitorexit(mLock)621 ····················//·monitorexit(mLock)
617 ····················return;622 ····················return;
618 ····················List·list·=·this.mSoftApEventListTethered;623 ····················//·iftrue(Label_0067:,·list.size()·<=·256)
619 ····················Label_0043:·{624 ····················List·list;
620 ························break·Label_0043;625 ····················while·(true)·{
621 ························Label_0067:·{ 
622 ····························wifiMetricsProto$SoftApConnectedClientsEvent.timeStampMillis·=·this.mClock.getElapsedSinceBootMillis(); 
623 ························} 
624 ························list.add(wifiMetricsProto$SoftApConnectedClientsEvent); 
625 ························return;626 ························return;
 627 ························list·=·this.mSoftApEventListTethered;
 628 ························continue;
626 ························list·=·this.mSoftApEventListLocalOnly;629 ························list·=·this.mSoftApEventListLocalOnly;
 630 ························continue;
627 ····················}631 ····················}
 632 ····················Label_0067:·{
 633 ························wifiMetricsProto$SoftApConnectedClientsEvent.timeStampMillis·=·this.mClock.getElapsedSinceBootMillis();
 634 ····················}
 635 ····················list.add(wifiMetricsProto$SoftApConnectedClientsEvent);
628 ················}636 ················}
629 ················//·iftrue(Label_0067:,·list.size()·<=·256) 
630 ················finally·{637 ················finally·{
631 ················}638 ················}
632 ················//·monitorexit(mLock)639 ················//·monitorexit(mLock)
633 ············}640 ············}
634 ········}641 ········}
635 ····}642 ····}
636 ····643 ····
Offset 1060, 36 lines modifiedOffset 1067, 36 lines modified
1060 ············linkProbeStats.successRssiCounts·=·this.mLinkProbeSuccessRssiCounts.toProto();1067 ············linkProbeStats.successRssiCounts·=·this.mLinkProbeSuccessRssiCounts.toProto();
1061 ············linkProbeStats.failureRssiCounts·=·this.mLinkProbeFailureRssiCounts.toProto();1068 ············linkProbeStats.failureRssiCounts·=·this.mLinkProbeFailureRssiCounts.toProto();
1062 ············linkProbeStats.successLinkSpeedCounts·=·this.mLinkProbeSuccessLinkSpeedCounts.toProto();1069 ············linkProbeStats.successLinkSpeedCounts·=·this.mLinkProbeSuccessLinkSpeedCounts.toProto();
1063 ············linkProbeStats.failureLinkSpeedCounts·=·this.mLinkProbeFailureLinkSpeedCounts.toProto();1070 ············linkProbeStats.failureLinkSpeedCounts·=·this.mLinkProbeFailureLinkSpeedCounts.toProto();
1064 ············linkProbeStats.successSecondsSinceLastTxSuccessHistogram·=·this.mLinkProbeSuccessSecondsSinceLastTxSuccessHistogram.toProto();1071 ············linkProbeStats.successSecondsSinceLastTxSuccessHistogram·=·this.mLinkProbeSuccessSecondsSinceLastTxSuccessHistogram.toProto();
1065 ············linkProbeStats.failureSecondsSinceLastTxSuccessHistogram·=·this.mLinkProbeFailureSecondsSinceLastTxSuccessHistogram.toProto();1072 ············linkProbeStats.failureSecondsSinceLastTxSuccessHistogram·=·this.mLinkProbeFailureSecondsSinceLastTxSuccessHistogram.toProto();
1066 ············linkProbeStats.successElapsedTimeMsHistogram·=·this.mLinkProbeSuccessElapsedTimeMsHistogram.toProto();1073 ············linkProbeStats.successElapsedTimeMsHistogram·=·this.mLinkProbeSuccessElapsedTimeMsHistogram.toProto();
1067 ············linkProbeStats.failureReasonCounts·=·(WifiMetricsProto$LinkProbeStats$LinkProbeFailureReasonCount[])this.mLinkProbeFailureReasonCounts.toProto((Class)WifiMetricsProto$LinkProbeStats$LinkProbeFailureReasonCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$vcvg6LFIJBJG-KkHvXgCZflUqM8.INSTANCE);1074 ············linkProbeStats.failureReasonCounts·=·(WifiMetricsProto$LinkProbeStats$LinkProbeFailureReasonCount[])this.mLinkProbeFailureReasonCounts.toProto((Class)WifiMetricsProto$LinkProbeStats$LinkProbeFailureReasonCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$T1JW2IOhhO1BZIdcRsXDLI5p_jU.INSTANCE);
1068 ············linkProbeStats.experimentProbeCounts·=·(WifiMetricsProto$LinkProbeStats$ExperimentProbeCounts[])this.mLinkProbeExperimentProbeCounts.toProto((Class)WifiMetricsProto$LinkProbeStats$ExperimentProbeCounts.class,·(ObjectCounter$ProtobufConverter)-$$Lambda$WifiMetrics$Ec3r-2QpFu8lQqDC7DTY1ZWwG98.INSTANCE);1075 ············linkProbeStats.experimentProbeCounts·=·(WifiMetricsProto$LinkProbeStats$ExperimentProbeCounts[])this.mLinkProbeExperimentProbeCounts.toProto((Class)WifiMetricsProto$LinkProbeStats$ExperimentProbeCounts.class,·(ObjectCounter$ProtobufConverter)-$$Lambda$WifiMetrics$Xm75btlTre4RyOGergfq257VAhA.INSTANCE);
1069 ············this.mWifiLogProto.linkProbeStats·=·linkProbeStats;1076 ············this.mWifiLogProto.linkProbeStats·=·linkProbeStats;
1070 ············this.mWifiLogProto.networkSelectionExperimentDecisionsList·=·this.makeNetworkSelectionExperimentDecisionsList();1077 ············this.mWifiLogProto.networkSelectionExperimentDecisionsList·=·this.makeNetworkSelectionExperimentDecisionsList();
1071 ············this.mWifiNetworkRequestApiLog.networkMatchSizeHistogram·=·this.mWifiNetworkRequestApiMatchSizeHistogram.toProto();1078 ············this.mWifiNetworkRequestApiLog.networkMatchSizeHistogram·=·this.mWifiNetworkRequestApiMatchSizeHistogram.toProto();
1072 ············this.mWifiLogProto.wifiNetworkRequestApiLog·=·this.mWifiNetworkRequestApiLog;1079 ············this.mWifiLogProto.wifiNetworkRequestApiLog·=·this.mWifiNetworkRequestApiLog;
1073 ············this.mWifiNetworkSuggestionApiLog.networkListSizeHistogram·=·this.mWifiNetworkSuggestionApiListSizeHistogram.toProto();1080 ············this.mWifiNetworkSuggestionApiLog.networkListSizeHistogram·=·this.mWifiNetworkSuggestionApiListSizeHistogram.toProto();
1074 ············this.mWifiNetworkSuggestionApiLog.appCountPerType·=·(WifiMetricsProto$WifiNetworkSuggestionApiLog$SuggestionAppCount[])this.mWifiNetworkSuggestionApiAppTypeCounter.toProto((Class)WifiMetricsProto$WifiNetworkSuggestionApiLog$SuggestionAppCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$g-i2Nizi6VjfljRFrCm5K8kpyCA.INSTANCE);1081 ············this.mWifiNetworkSuggestionApiLog.appCountPerType·=·(WifiMetricsProto$WifiNetworkSuggestionApiLog$SuggestionAppCount[])this.mWifiNetworkSuggestionApiAppTypeCounter.toProto((Class)WifiMetricsProto$WifiNetworkSuggestionApiLog$SuggestionAppCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$OvjpwQPe_nNiIDZ818Wor5vYCTg.INSTANCE);
1075 ············this.mWifiLogProto.wifiNetworkSuggestionApiLog·=·this.mWifiNetworkSuggestionApiLog;1082 ············this.mWifiLogProto.wifiNetworkSuggestionApiLog·=·this.mWifiNetworkSuggestionApiLog;
1076 ············final·WifiMetricsProto$UserReactionToApprovalUiEvent·userReactionToApprovalUiEvent·=·new·WifiMetricsProto$UserReactionToApprovalUiEvent();1083 ············final·WifiMetricsProto$UserReactionToApprovalUiEvent·userReactionToApprovalUiEvent·=·new·WifiMetricsProto$UserReactionToApprovalUiEvent();
1077 ············userReactionToApprovalUiEvent.userApprovalAppUiReaction·=·this.mUserApprovalSuggestionAppUiReactionList.toArray(new·WifiMetricsProto$UserReactionToApprovalUiEvent$UserReaction[0]);1084 ············userReactionToApprovalUiEvent.userApprovalAppUiReaction·=·this.mUserApprovalSuggestionAppUiReactionList.toArray(new·WifiMetricsProto$UserReactionToApprovalUiEvent$UserReaction[0]);
1078 ············userReactionToApprovalUiEvent.userApprovalCarrierUiReaction·=·this.mUserApprovalCarrierUiReactionList.toArray(new·WifiMetricsProto$UserReactionToApprovalUiEvent$UserReaction[0]);1085 ············userReactionToApprovalUiEvent.userApprovalCarrierUiReaction·=·this.mUserApprovalCarrierUiReactionList.toArray(new·WifiMetricsProto$UserReactionToApprovalUiEvent$UserReaction[0]);
1079 ············this.mWifiLogProto.userReactionToApprovalUiEvent·=·userReactionToApprovalUiEvent;1086 ············this.mWifiLogProto.userReactionToApprovalUiEvent·=·userReactionToApprovalUiEvent;
1080 ············this.mWifiLockStats.highPerfLockAcqDurationSecHistogram·=·this.mWifiLockHighPerfAcqDurationSecHistogram.toProto();1087 ············this.mWifiLockStats.highPerfLockAcqDurationSecHistogram·=·this.mWifiLockHighPerfAcqDurationSecHistogram.toProto();
1081 ············this.mWifiLockStats.lowLatencyLockAcqDurationSecHistogram·=·this.mWifiLockLowLatencyAcqDurationSecHistogram.toProto();1088 ············this.mWifiLockStats.lowLatencyLockAcqDurationSecHistogram·=·this.mWifiLockLowLatencyAcqDurationSecHistogram.toProto();
1082 ············this.mWifiLockStats.highPerfActiveSessionDurationSecHistogram·=·this.mWifiLockHighPerfActiveSessionDurationSecHistogram.toProto();1089 ············this.mWifiLockStats.highPerfActiveSessionDurationSecHistogram·=·this.mWifiLockHighPerfActiveSessionDurationSecHistogram.toProto();
1083 ············this.mWifiLockStats.lowLatencyActiveSessionDurationSecHistogram·=·this.mWifiLockLowLatencyActiveSessionDurationSecHistogram.toProto();1090 ············this.mWifiLockStats.lowLatencyActiveSessionDurationSecHistogram·=·this.mWifiLockLowLatencyActiveSessionDurationSecHistogram.toProto();
1084 ············this.mWifiLogProto.wifiLockStats·=·this.mWifiLockStats;1091 ············this.mWifiLogProto.wifiLockStats·=·this.mWifiLockStats;
1085 ············this.mWifiLogProto.wifiToggleStats·=·this.mWifiToggleStats;1092 ············this.mWifiLogProto.wifiToggleStats·=·this.mWifiToggleStats;
1086 ············this.mWifiLogProto.passpointProvisionStats·=·new·WifiMetricsProto$PasspointProvisionStats();1093 ············this.mWifiLogProto.passpointProvisionStats·=·new·WifiMetricsProto$PasspointProvisionStats();
1087 ············this.mWifiLogProto.passpointProvisionStats.numProvisionSuccess·=·this.mNumProvisionSuccess;1094 ············this.mWifiLogProto.passpointProvisionStats.numProvisionSuccess·=·this.mNumProvisionSuccess;
1088 ············this.mWifiLogProto.passpointProvisionStats.provisionFailureCount·=·(WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount[])this.mPasspointProvisionFailureCounts.toProto((Class)WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$hCQnbfHa4CszDg9W7E2N3YuYGH0.INSTANCE);1095 ············this.mWifiLogProto.passpointProvisionStats.provisionFailureCount·=·(WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount[])this.mPasspointProvisionFailureCounts.toProto((Class)WifiMetricsProto$PasspointProvisionStats$ProvisionFailureCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$16WVNho1AvmpxQo_EpVKAzc0TGA.INSTANCE);
1089 ············this.mWifiLogProto.txLinkSpeedCount2G·=·this.mTxLinkSpeedCount2g.toProto();1096 ············this.mWifiLogProto.txLinkSpeedCount2G·=·this.mTxLinkSpeedCount2g.toProto();
1090 ············this.mWifiLogProto.txLinkSpeedCount5GLow·=·this.mTxLinkSpeedCount5gLow.toProto();1097 ············this.mWifiLogProto.txLinkSpeedCount5GLow·=·this.mTxLinkSpeedCount5gLow.toProto();
1091 ············this.mWifiLogProto.txLinkSpeedCount5GMid·=·this.mTxLinkSpeedCount5gMid.toProto();1098 ············this.mWifiLogProto.txLinkSpeedCount5GMid·=·this.mTxLinkSpeedCount5gMid.toProto();
1092 ············this.mWifiLogProto.txLinkSpeedCount5GHigh·=·this.mTxLinkSpeedCount5gHigh.toProto();1099 ············this.mWifiLogProto.txLinkSpeedCount5GHigh·=·this.mTxLinkSpeedCount5gHigh.toProto();
1093 ············this.mWifiLogProto.txLinkSpeedCount6GLow·=·this.mTxLinkSpeedCount6gLow.toProto();1100 ············this.mWifiLogProto.txLinkSpeedCount6GLow·=·this.mTxLinkSpeedCount6gLow.toProto();
1094 ············this.mWifiLogProto.txLinkSpeedCount6GMid·=·this.mTxLinkSpeedCount6gMid.toProto();1101 ············this.mWifiLogProto.txLinkSpeedCount6GMid·=·this.mTxLinkSpeedCount6gMid.toProto();
1095 ············this.mWifiLogProto.txLinkSpeedCount6GHigh·=·this.mTxLinkSpeedCount6gHigh.toProto();1102 ············this.mWifiLogProto.txLinkSpeedCount6GHigh·=·this.mTxLinkSpeedCount6gHigh.toProto();
Offset 1176, 15 lines modifiedOffset 1183, 42 lines modified
1176 ········else·{1183 ········else·{
1177 ············n·=·12;1184 ············n·=·12;
1178 ········}1185 ········}
1179 ········return·n;1186 ········return·n;
1180 ····}1187 ····}
1181 ····1188 ····
1182 ····private·WifiMetricsProto$PasspointProfileTypeCount[]·convertPasspointProfilesToProto(final·IntCounter·intCounter)·{1189 ····private·WifiMetricsProto$PasspointProfileTypeCount[]·convertPasspointProfilesToProto(final·IntCounter·intCounter)·{
1183 ········return·(WifiMetricsProto$PasspointProfileTypeCount[])intCounter.toProto((Class)WifiMetricsProto$PasspointProfileTypeCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$44hWFHu2Ow6KJRWvZOKPKcJF7Ks.INSTANCE);1190 ········return·(WifiMetricsProto$PasspointProfileTypeCount[])intCounter.toProto((Class)WifiMetricsProto$PasspointProfileTypeCount.class,·(IntCounter$ProtobufConverter)-$$Lambda$WifiMetrics$VfkmgOBI-fE761gbKu5kyfEh7ZY.INSTANCE);
 1191 ····}
 1192 ····
 1193 ····private·WifiMetricsProto$NetworkDisableReason·convertToNetworkDisableReason(final·WifiConfiguration·wifiConfiguration,·final·Set·set)·{
 1194 ········final·WifiConfiguration$NetworkSelectionStatus·networkSelectionStatus·=·wifiConfiguration.getNetworkSelectionStatus();
 1195 ········final·WifiMetricsProto$NetworkDisableReason·wifiMetricsProto$NetworkDisableReason·=·new·WifiMetricsProto$NetworkDisableReason();
 1196 ········final·boolean·allowAutojoin·=·wifiConfiguration.allowAutojoin;
 1197 ········final·boolean·configPermanentlyDisabled·=·true;
 1198 ········if·(allowAutojoin)·{
 1199 ············if·(!networkSelectionStatus.isNetworkEnabled())·{
 1200 ················wifiMetricsProto$NetworkDisableReason.disableReason·=·MetricsUtils.convertNetworkSelectionDisableReasonToWifiProtoEnum(networkSelectionStatus.getNetworkSelectionDisableReason());
 1201 ················if·(networkSelectionStatus.isNetworkPermanentlyDisabled())·{
 1202 ····················wifiMetricsProto$NetworkDisableReason.configPermanentlyDisabled·=·configPermanentlyDisabled;
 1203 ················}
 1204 ················else·{
 1205 ····················wifiMetricsProto$NetworkDisableReason.configTemporarilyDisabled·=·configPermanentlyDisabled;
 1206 ················}
 1207 ············}
 1208 ········}
 1209 ········else·{
 1210 ············wifiMetricsProto$NetworkDisableReason.disableReason·=·15;
 1211 ············wifiMetricsProto$NetworkDisableReason.configPermanentlyDisabled·=·configPermanentlyDisabled;
 1212 ········}
 1213 ········final·int[]·array·=·set.stream().mapToInt((ToIntFunction)-$$Lambda$WifiMetrics$gtlE7S-z8oAxhHJ_WaqIJsUzgAo.INSTANCE).toArray();
 1214 ········if·(array.length·>·0)·{
 1215 ············wifiMetricsProto$NetworkDisableReason.bssidDisableReasons·=·array;
 1216 ········}
 1217 ········return·wifiMetricsProto$NetworkDisableReason;
1184 ····}1218 ····}
1185 ····1219 ····
1186 ····private·WifiMetricsProto$StaEvent$ConfigInfo·createConfigInfo(final·WifiConfiguration·wifiConfiguration)·{1220 ····private·WifiMetricsProto$StaEvent$ConfigInfo·createConfigInfo(final·WifiConfiguration·wifiConfiguration)·{
1187 ········if·(wifiConfiguration·==·null)·{1221 ········if·(wifiConfiguration·==·null)·{
1188 ············return·null;1222 ············return·null;
1189 ········}1223 ········}
1190 ········final·WifiMetricsProto$StaEvent$ConfigInfo·wifiMetricsProto$StaEvent$ConfigInfo·=·new·WifiMetricsProto$StaEvent$ConfigInfo();1224 ········final·WifiMetricsProto$StaEvent$ConfigInfo·wifiMetricsProto$StaEvent$ConfigInfo·=·new·WifiMetricsProto$StaEvent$ConfigInfo();
Offset 2201, 15 lines modifiedOffset 2235, 15 lines modified
2201 ········orCreateDeviceMobilityStatePnoScanStats.totalDurationMs·+=·mCurrentDeviceMobilityStateStartMs·-·this.mCurrentDeviceMobilityStateStartMs;2235 ········orCreateDeviceMobilityStatePnoScanStats.totalDurationMs·+=·mCurrentDeviceMobilityStateStartMs·-·this.mCurrentDeviceMobilityStateStartMs;
2202 ········this.mCurrentDeviceMobilityStateStartMs·=·mCurrentDeviceMobilityStateStartMs;2236 ········this.mCurrentDeviceMobilityStateStartMs·=·mCurrentDeviceMobilityStateStartMs;
2203 ····}2237 ····}
2204 ····2238 ····
2205 ····private·void·updateMetricsFromNetworkDetail(final·NetworkDetail·networkDetail)·{2239 ····private·void·updateMetricsFromNetworkDetail(final·NetworkDetail·networkDetail)·{
2206 ········final·int·dtimInterval·=·networkDetail.getDtimInterval();2240 ········final·int·dtimInterval·=·networkDetail.getDtimInterval();
2207 ········if·(dtimInterval·>·0)·{2241 ········if·(dtimInterval·>·0)·{
2208 ············WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).dtim·=·dtimInterval;2242 ············WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).dtim·=·dtimInterval;
2209 ········}2243 ········}
2210 ········final·int·wifiMode·=·networkDetail.getWifiMode();2244 ········final·int·wifiMode·=·networkDetail.getWifiMode();
2211 ········final·int·n·=·1;2245 ········final·int·n·=·1;
2212 ········int·routerTechnology·=·0;2246 ········int·routerTechnology·=·0;
2213 ········switch·(wifiMode)·{2247 ········switch·(wifiMode)·{
2214 ············default:·{2248 ············default:·{
2215 ················routerTechnology·=·6;2249 ················routerTechnology·=·6;
Offset 2240, 46 lines modifiedOffset 2274, 46 lines modified
2240 ················break;2274 ················break;
2241 ············}2275 ············}
2242 ············case·0:·{2276 ············case·0:·{
2243 ················routerTechnology·=·0;2277 ················routerTechnology·=·0;
2244 ················break;2278 ················break;
2245 ············}2279 ············}
2246 ········}2280 ········}
2247 ········WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).routerTechnology·=·routerTechnology;2281 ········WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).routerTechnology·=·routerTechnology;
2248 ········if·(networkDetail.isMboSupported())·{2282 ········if·(networkDetail.isMboSupported())·{
2249 ············final·WifiMetricsProto$WifiLog·mWifiLogProto·=·this.mWifiLogProto;2283 ············final·WifiMetricsProto$WifiLog·mWifiLogProto·=·this.mWifiLogProto;
2250 ············mWifiLogProto.numConnectToNetworkSupportingMbo·+=·n;2284 ············mWifiLogProto.numConnectToNetworkSupportingMbo·+=·n;
2251 ············if·(networkDetail.isOceSupported())·{2285 ············if·(networkDetail.isOceSupported())·{
2252 ················final·WifiMetricsProto$WifiLog·mWifiLogProto2·=·this.mWifiLogProto;2286 ················final·WifiMetricsProto$WifiLog·mWifiLogProto2·=·this.mWifiLogProto;
2253 ················mWifiLogProto2.numConnectToNetworkSupportingOce·+=·n;2287 ················mWifiLogProto2.numConnectToNetworkSupportingOce·+=·n;
2254 ············}2288 ············}
2255 ········}2289 ········}
2256 ····}2290 ····}
2257 ····2291 ····
2258 ····private·void·updateMetricsFromScanResult(final·ScanResult·scanResult)·{2292 ····private·void·updateMetricsFromScanResult(final·ScanResult·scanResult)·{
2259 ········final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent·=·this.mCurrentConnectionEvent;2293 ········final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent·=·this.mCurrentConnectionEvent;
2260 ········mCurrentConnectionEvent.mConnectionEvent.signalStrength·=·scanResult.level;2294 ········mCurrentConnectionEvent.mConnectionEvent.signalStrength·=·scanResult.level;
2261 ········WifiMetrics$RouterFingerPrint.access$1000(mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·1;2295 ········WifiMetrics$RouterFingerPrint.access$1300(mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·1;
2262 ········WifiMetrics$ConnectionEvent.access$1302(this.mCurrentConnectionEvent,·scanResult.BSSID);2296 ········WifiMetrics$ConnectionEvent.access$1602(this.mCurrentConnectionEvent,·scanResult.BSSID);
2263 ········if·(scanResult.capabilities·!=·null)·{2297 ········if·(scanResult.capabilities·!=·null)·{
2264 ············final·boolean·scanResultForWepNetwork·=·ScanResultUtil.isScanResultForWepNetwork(scanResult);2298 ············final·boolean·scanResultForWepNetwork·=·ScanResultUtil.isScanResultForWepNetwork(scanResult);
2265 ············final·int·n·=·2;2299 ············final·int·n·=·2;
2266 ············if·(scanResultForWepNetwork)·{2300 ············if·(scanResultForWepNetwork)·{
2267 ················WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·n;2301 ················WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·n;
2268 ············}2302 ············}
2269 ············else·if·(!ScanResultUtil.isScanResultForPskNetwork(scanResult)·&&·!ScanResultUtil.isScanResultForSaeNetwork(scanResult))·{2303 ············else·if·(!ScanResultUtil.isScanResultForPskNetwork(scanResult)·&&·!ScanResultUtil.isScanResultForSaeNetwork(scanResult))·{
2270 ················if·(ScanResultUtil.isScanResultForEapNetwork(scanResult)·||·ScanResultUtil.isScanResultForEapSuiteBNetwork(scanResult))·{2304 ················if·(ScanResultUtil.isScanResultForEapNetwork(scanResult)·||·ScanResultUtil.isScanResultForEapSuiteBNetwork(scanResult))·{
2271 ····················WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·3;2305 ····················WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·3;
2272 ················}2306 ················}
2273 ············}2307 ············}
2274 ············else·{2308 ············else·{
2275 ················WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·n;2309 ················WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).authentication·=·n;
2276 ············}2310 ············}
2277 ········}2311 ········}
2278 ········WifiMetrics$RouterFingerPrint.access$1000(this.mCurrentConnectionEvent.mRouterFingerPrint).channelInfo·=·scanResult.frequency;2312 ········WifiMetrics$RouterFingerPrint.access$1300(this.mCurrentConnectionEvent.mRouterFingerPrint).channelInfo·=·scanResult.frequency;
2279 ····}2313 ····}
2280 ····2314 ····
2281 ····private·String·wifiSystemStateToString(final·int·n)·{2315 ····private·String·wifiSystemStateToString(final·int·n)·{
2282 ········if·(n·==·0)·{2316 ········if·(n·==·0)·{
2283 ············return·"WIFI_UNKNOWN";2317 ············return·"WIFI_UNKNOWN";
2284 ········}2318 ········}
2285 ········if·(n·==·1)·{2319 ········if·(n·==·1)·{
Offset 2364, 41 lines modifiedOffset 2398, 43 lines modified
2364 ············Label_0031:·{2398 ············Label_0031:·{
2365 ················if·(n·==·2)·{2399 ················if·(n·==·2)·{
2366 ····················break·Label_0031;2400 ····················break·Label_0031;
2367 ················}2401 ················}
2368 ················try·{2402 ················try·{
2369 ····················//·monitorexit(mLock)2403 ····················//·monitorexit(mLock)
2370 ····················return;2404 ····················return;
2371 ····················List·list·=·this.mSoftApEventListTethered;2405 ····················//·iftrue(Label_0106:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0)
2372 ················Block_6_Outer:2406 ····················//·iftrue(Label_0113:,·n·<·0)
2373 ····················while·(true)·{2407 ····················while·(true)·{
2374 ························n·=·list.size()·-·n2; 
2375 ························while·(true)·{2408 ························while·(true)·{
2376 ····························Label_0054:·{2409 ····························while·(true)·{
2377 ································break·Label_0054; 
2378 ································final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent;2410 ································final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent;
2379 ································wifiMetricsProto$SoftApConnectedClientsEvent.channelFrequency·=·channelFrequency;2411 ································wifiMetricsProto$SoftApConnectedClientsEvent.channelFrequency·=·channelFrequency;
2380 ································wifiMetricsProto$SoftApConnectedClientsEvent.channelBandwidth·=·channelBandwidth;2412 ································wifiMetricsProto$SoftApConnectedClientsEvent.channelBandwidth·=·channelBandwidth;
2381 ································return;2413 ································return;
2382 ································Label_0106:·{2414 ································final·List·list;
2383 ····································--n;2415 ································wifiMetricsProto$SoftApConnectedClientsEvent·=·list.get(n);
2384 ································}2416 ································continue;
2385 ································break·Label_0054; 
2386 ································Label_0113: 
2387 ································return; 
2388 ····························}2417 ····························}
2389 ····························final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent·=·(WifiMetricsProto$SoftApConnectedClientsEvent)list.get(n); 
2390 ····························continue;2418 ····························continue;
2391 ························}2419 ························}
2392 ························list·=·this.mSoftApEventListLocalOnly;2420 ························List·list·=·this.mSoftApEventListLocalOnly;
2393 ························continue·Block_6_Outer;2421 ························Label_0044:·{
 2422 ····························break·Label_0044;
 2423 ····························Label_0106:·{
 2424 ································--n;
 2425 ····························}
 2426 ····························continue;
 2427 ····························list·=·this.mSoftApEventListTethered;
 2428 ························}
 2429 ························n·=·list.size()·-·n2;
 2430 ························continue;
2394 ····················}2431 ····················}
 2432 ····················Label_0113:;
2395 ················}2433 ················}
2396 ················//·iftrue(Label_0113:,·n·<·0) 
2397 ················//·iftrue(Label_0106:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0) 
2398 ················finally·{2434 ················finally·{
2399 ················}2435 ················}
2400 ················//·monitorexit(mLock)2436 ················//·monitorexit(mLock)
2401 ············}2437 ············}
2402 ········}2438 ········}
2403 ····}2439 ····}
2404 ····2440 ····
Offset 4349, 37 lines modifiedOffset 4385, 38 lines modified
4349 ····}4385 ····}
4350 ····4386 ····
4351 ····public·void·endConnectionEvent(int·connectionResultFailureCode,·int·connectivityLevelFailureCode,·int·signalStrength)·{4387 ····public·void·endConnectionEvent(int·connectionResultFailureCode,·int·connectivityLevelFailureCode,·int·signalStrength)·{
4352 ········synchronized·(this.mLock)·{4388 ········synchronized·(this.mLock)·{
4353 ············if·(this.mCurrentConnectionEvent·!=·null)·{4389 ············if·(this.mCurrentConnectionEvent·!=·null)·{
4354 ················int·connectionResult·=·0;4390 ················int·connectionResult·=·0;
4355 ················final·boolean·b·=·true;4391 ················final·boolean·b·=·true;
4356 ················final·boolean·b2·=·connectionResultFailureCode·==·(b·?·1·:·0)·&&·connectivityLevelFailureCode·==·(b·?·1·:·0)·&&·b;4392 ················final·boolean·connected·=·connectionResultFailureCode·==·(b·?·1·:·0)·&&·connectivityLevelFailureCode·==·(b·?·1·:·0)·&&·b;
4357 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent·=·this.mCurrentConnectionEvent.mConnectionEvent;4393 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent·=·this.mCurrentConnectionEvent.mConnectionEvent;
4358 ················if·(b2)·{4394 ················if·(connected)·{
4359 ····················connectionResult·=·(b·?·1·:·0);4395 ····················connectionResult·=·(b·?·1·:·0);
4360 ················}4396 ················}
4361 ················mConnectionEvent.connectionResult·=·connectionResult;4397 ················mConnectionEvent.connectionResult·=·connectionResult;
4362 ················WifiMetrics$ConnectionEvent.access$1702(this.mCurrentConnectionEvent,·this.mClock.getElapsedSinceBootMillis());4398 ················WifiMetrics$ConnectionEvent.access$2002(this.mCurrentConnectionEvent,·this.mClock.getElapsedSinceBootMillis());
4363 ················this.mCurrentConnectionEvent.mConnectionEvent.durationTakenToConnectMillis·=·(int)(WifiMetrics$ConnectionEvent.access$1700(this.mCurrentConnectionEvent)·-·WifiMetrics$ConnectionEvent.access$1200(this.mCurrentConnectionEvent));4399 ················this.mCurrentConnectionEvent.mConnectionEvent.durationTakenToConnectMillis·=·(int)(WifiMetrics$ConnectionEvent.access$2000(this.mCurrentConnectionEvent)·-·WifiMetrics$ConnectionEvent.access$1500(this.mCurrentConnectionEvent));
4364 ················this.mCurrentConnectionEvent.mConnectionEvent.level2FailureCode·=·connectionResultFailureCode;4400 ················this.mCurrentConnectionEvent.mConnectionEvent.level2FailureCode·=·connectionResultFailureCode;
4365 ················this.mCurrentConnectionEvent.mConnectionEvent.connectivityLevelFailureCode·=·connectivityLevelFailureCode;4401 ················this.mCurrentConnectionEvent.mConnectionEvent.connectivityLevelFailureCode·=·connectivityLevelFailureCode;
4366 ················this.mCurrentConnectionEvent.mConnectionEvent.level2FailureReason·=·signalStrength;4402 ················this.mCurrentConnectionEvent.mConnectionEvent.level2FailureReason·=·signalStrength;
4367 ················connectionResultFailureCode·=·this.getConnectionResultFailureCode(connectionResultFailureCode,·signalStrength);4403 ················connectionResultFailureCode·=·this.getConnectionResultFailureCode(connectionResultFailureCode,·signalStrength);
4368 ················connectivityLevelFailureCode·=·-1;4404 ················connectivityLevelFailureCode·=·-1;
4369 ················if·(connectionResultFailureCode·!=·connectivityLevelFailureCode)·{4405 ················if·(connectionResultFailureCode·!=·connectivityLevelFailureCode)·{
4370 ····················connectivityLevelFailureCode·=·253;4406 ····················connectivityLevelFailureCode·=·253;
4371 ····················signalStrength·=·this.mCurrentConnectionEvent.mConnectionEvent.signalStrength;4407 ····················signalStrength·=·this.mCurrentConnectionEvent.mConnectionEvent.signalStrength;
4372 ····················WifiStatsLog.write(connectivityLevelFailureCode,·b2,·connectionResultFailureCode,·signalStrength);4408 ····················WifiStatsLog.write(connectivityLevelFailureCode,·connected,·connectionResultFailureCode,·signalStrength);
4373 ················}4409 ················}
4374 ················connectionResultFailureCode·=·0;4410 ················connectionResultFailureCode·=·0;
4375 ················this.mCurrentConnectionEvent·=·null;4411 ················this.mCurrentConnectionEvent·=·null;
4376 ················if·(!b2)·{4412 ················if·(!connected)·{
4377 ····················this.mScanResultRssiTimestampMillis·=·-1;4413 ····················this.mScanResultRssiTimestampMillis·=·-1;
4378 ················}4414 ················}
 4415 ················this.mWifiStatusBuilder.setConnected(connected);
4379 ············}4416 ············}
4380 ········}4417 ········}
4381 ····}4418 ····}
4382 ····4419 ····
4383 ····public·void·enterDeviceMobilityState(int·n)·{4420 ····public·void·enterDeviceMobilityState(int·n)·{
4384 ········synchronized·(this.mLock)·{4421 ········synchronized·(this.mLock)·{
4385 ············this.updateCurrentMobilityStateTotalDuration(this.mClock.getElapsedSinceBootMillis());4422 ············this.updateCurrentMobilityStateTotalDuration(this.mClock.getElapsedSinceBootMillis());
Offset 4463, 14 lines modifiedOffset 4500, 16 lines modified
4463 ········this.mLastPollRssi·=·wifiInfo.getRssi();4500 ········this.mLastPollRssi·=·wifiInfo.getRssi();
4464 ········this.mLastPollLinkSpeed·=·wifiInfo.getLinkSpeed();4501 ········this.mLastPollLinkSpeed·=·wifiInfo.getLinkSpeed();
4465 ········this.incrementRssiPollRssiCount(this.mLastPollFreq·=·wifiInfo.getFrequency(),·this.mLastPollRssi);4502 ········this.incrementRssiPollRssiCount(this.mLastPollFreq·=·wifiInfo.getFrequency(),·this.mLastPollRssi);
4466 ········this.incrementLinkSpeedCount(this.mLastPollLinkSpeed,·this.mLastPollRssi);4503 ········this.incrementLinkSpeedCount(this.mLastPollLinkSpeed,·this.mLastPollRssi);
4467 ········this.mLastPollRxLinkSpeed·=·wifiInfo.getRxLinkSpeedMbps();4504 ········this.mLastPollRxLinkSpeed·=·wifiInfo.getRxLinkSpeedMbps();
4468 ········this.incrementTxLinkSpeedBandCount(this.mLastPollLinkSpeed,·this.mLastPollFreq);4505 ········this.incrementTxLinkSpeedBandCount(this.mLastPollLinkSpeed,·this.mLastPollFreq);
4469 ········this.incrementRxLinkSpeedBandCount(this.mLastPollRxLinkSpeed,·this.mLastPollFreq);4506 ········this.incrementRxLinkSpeedBandCount(this.mLastPollRxLinkSpeed,·this.mLastPollFreq);
 4507 ········this.mWifiStatusBuilder.setRssi(this.mLastPollRssi);
 4508 ········this.mWifiStatusBuilder.setNetworkId(wifiInfo.getNetworkId());
4470 ····}4509 ····}
4471 ····4510 ····
4472 ····public·void·incrementAvailableNetworksHistograms(final·List·list,·final·boolean·b)·{4511 ····public·void·incrementAvailableNetworksHistograms(final·List·list,·final·boolean·b)·{
4473 ········synchronized·(this.mLock)·{4512 ········synchronized·(this.mLock)·{
4474 ············if·(this.mWifiConfigManager·==·null·||·this.mWifiNetworkSelector·==·null·||·this.mPasspointManager·==·null)·{4513 ············if·(this.mWifiConfigManager·==·null·||·this.mWifiNetworkSelector·==·null·||·this.mPasspointManager·==·null)·{
4475 ················return;4514 ················return;
4476 ············}4515 ············}
Offset 5238, 39 lines modifiedOffset 5277, 49 lines modified
5238 ····public·void·incrementNumWifiToggles(final·boolean·b,·final·boolean·b2)·{5277 ····public·void·incrementNumWifiToggles(final·boolean·b,·final·boolean·b2)·{
5239 ········final·Object·mLock·=·this.mLock;5278 ········final·Object·mLock·=·this.mLock;
5240 ········//·monitorenter(mLock)5279 ········//·monitorenter(mLock)
5241 ········Label_0039:·{5280 ········Label_0039:·{
5242 ············if·(!b·||·!b2)·{5281 ············if·(!b·||·!b2)·{
5243 ················break·Label_0039;5282 ················break·Label_0039;
5244 ············}5283 ············}
 5284 ············WifiMetricsProto$WifiToggleStats·mWifiToggleStats;
 5285 ············WifiMetricsProto$WifiToggleStats·mWifiToggleStats2;
 5286 ············WifiMetricsProto$WifiToggleStats·mWifiToggleStats3;
 5287 ············WifiMetricsProto$WifiToggleStats·mWifiToggleStats4;
 5288 ············Block_6_Outer:Block_8_Outer:
5245 ············while·(true)·{5289 ············while·(true)·{
5246 ················try·{5290 ················try·{
5247 ····················final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats·=·this.mWifiToggleStats;5291 ····················mWifiToggleStats·=·this.mWifiToggleStats;
5248 ····················++mWifiToggleStats.numToggleOnPrivileged;5292 ····················++mWifiToggleStats.numToggleOnPrivileged;
5249 ····················break·Label_0112;5293 ····················break·Label_0112;
5250 ················}5294 ················}
5251 ················finally·{5295 ················finally·{
5252 ····················//·monitorexit(mLock)5296 ····················//·monitorexit(mLock)
 5297 ····················//·monitorexit(mLock)
5253 ····················//·iftrue(Label_0067:,·!b·||·b2)5298 ····················//·iftrue(Label_0067:,·!b·||·b2)
5254 ····················final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats2·=·this.mWifiToggleStats;5299 ····················while·(true)·{
5255 ····················++mWifiToggleStats2.numToggleOffPrivileged;5300 ························mWifiToggleStats2·=·this.mWifiToggleStats;
5256 ····················break·Label_0112;5301 ························++mWifiToggleStats2.numToggleOffPrivileged;
5257 ····················final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats3;5302 ························return;
 5303 ························continue·Block_8_Outer;
 5304 ····················}
5258 ····················Label_0095:·{5305 ····················Label_0095:·{
5259 ························mWifiToggleStats3·=·this.mWifiToggleStats;5306 ························mWifiToggleStats3·=·this.mWifiToggleStats;
5260 ····················}5307 ····················}
5261 ····················++mWifiToggleStats3.numToggleOffNormal;5308 ····················++mWifiToggleStats3.numToggleOffNormal;
5262 ····················//·monitorexit(mLock)5309 ····················continue·Block_6_Outer;
5263 ····················return;5310 ····················while·(true)·{
5264 ····················Label_0067:5311 ························mWifiToggleStats4·=·this.mWifiToggleStats;
5265 ····················//·iftrue(Label_0095:,·b·||·!b2)5312 ························++mWifiToggleStats4.numToggleOnNormal;
5266 ····················final·WifiMetricsProto$WifiToggleStats·mWifiToggleStats4·=·this.mWifiToggleStats;5313 ························continue·Block_6_Outer;
5267 ····················++mWifiToggleStats4.numToggleOnNormal;5314 ························Label_0067:
5268 ····················continue;5315 ························continue;
 5316 ····················}
5269 ················}5317 ················}
 5318 ················//·iftrue(Label_0095:,·b·||·!b2)
5270 ················break;5319 ················break;
5271 ············}5320 ············}
5272 ········}5321 ········}
5273 ····}5322 ····}
5274 ····5323 ····
5275 ····public·void·incrementNumWificondCrashes()·{5324 ····public·void·incrementNumWificondCrashes()·{
5276 ········synchronized·(this.mLock)·{5325 ········synchronized·(this.mLock)·{
Offset 5466, 15 lines modifiedOffset 5515, 15 lines modified
5466 ····················}5515 ····················}
5467 ····················else·if·(n2·<=·6425)·{5516 ····················else·if·(n2·<=·6425)·{
5468 ························this.mRxLinkSpeedCount6gLow.increment(n);5517 ························this.mRxLinkSpeedCount6gLow.increment(n);
5469 ····················}5518 ····················}
5470 ····················else·if·(n2·<=·6875)·{5519 ····················else·if·(n2·<=·6875)·{
5471 ························this.mRxLinkSpeedCount6gMid.increment(n);5520 ························this.mRxLinkSpeedCount6gMid.increment(n);
5472 ····················}5521 ····················}
5473 ····················else·if·(n2·<=·7105)·{5522 ····················else·if·(n2·<=·7115)·{
5474 ························this.mRxLinkSpeedCount6gHigh.increment(n);5523 ························this.mRxLinkSpeedCount6gHigh.increment(n);
5475 ····················}5524 ····················}
5476 ················}5525 ················}
5477 ············}5526 ············}
5478 ········}5527 ········}
5479 ····}5528 ····}
5480 ····5529 ····
Offset 5494, 77 lines modifiedOffset 5543, 72 lines modified
5494 ············}5543 ············}
5495 ············try·{5544 ············try·{
5496 ················this.mSoftApManagerReturnCodeCounts.put(n,·this.mSoftApManagerReturnCodeCounts.get(n)·+·n);5545 ················this.mSoftApManagerReturnCodeCounts.put(n,·this.mSoftApManagerReturnCodeCounts.get(n)·+·n);
5497 ············}5546 ············}
5498 ············//·monitorexit(mLock)5547 ············//·monitorexit(mLock)
5499 ············finally·{5548 ············finally·{
5500 ················//·monitorexit(mLock)5549 ················//·monitorexit(mLock)
5501 ················//·iftrue(Label_0092:,·value·!=·n)5550 ················int·n2·=·0;
 5551 ················Label_0133:·{
 5552 ····················value·=·this.mSoftApManagerReturnCodeCounts.get(n2);
 5553 ················}
 5554 ················final·SparseIntArray·mSoftApManagerReturnCodeCounts·=·this.mSoftApManagerReturnCodeCounts;
 5555 ················value·+=·n;
 5556 ················mSoftApManagerReturnCodeCounts.put(n2,·value);
5502 ················//·iftrue(Label_0133:,·value·!=·n2)5557 ················//·iftrue(Label_0133:,·value·!=·n2)
 5558 ················//·iftrue(Label_0092:,·value·!=·n)
5503 ················Label_0162:·{5559 ················Label_0162:·{
5504 ····················Block_4:·{5560 ····················break·Label_0162;
5505 ························break·Block_4;5561 ····················while·(true)·{
5506 ························final·int·n2;5562 ························final·SparseIntArray·mSoftApManagerReturnCodeCounts2·=·this.mSoftApManagerReturnCodeCounts;
5507 ························Label_0133:·{5563 ························value·=·3;
5508 ····························value·=·this.mSoftApManagerReturnCodeCounts.get(n2);5564 ························this.mSoftApManagerReturnCodeCounts.put(value,·mSoftApManagerReturnCodeCounts2.get(value)·+·n);
5509 ························} 
5510 ························final·SparseIntArray·mSoftApManagerReturnCodeCounts·=·this.mSoftApManagerReturnCodeCounts; 
5511 ························value·+=·n; 
5512 ························mSoftApManagerReturnCodeCounts.put(n2,·value); 
5513 ························break·Label_0162;5565 ························break·Label_0162;
5514 ························Label_0092:5566 ························Label_0092:
5515 ························n2·=·2;5567 ························n2·=·2;
5516 ························final·SparseIntArray·mSoftApManagerReturnCodeCounts2·=·this.mSoftApManagerReturnCodeCounts;5568 ························final·SparseIntArray·mSoftApManagerReturnCodeCounts3·=·this.mSoftApManagerReturnCodeCounts;
5517 ························value·=·4;5569 ························value·=·4;
5518 ························this.mSoftApManagerReturnCodeCounts.put(value,·mSoftApManagerReturnCodeCounts2.get(value)·+·n);5570 ························this.mSoftApManagerReturnCodeCounts.put(value,·mSoftApManagerReturnCodeCounts3.get(value)·+·n);
5519 ························break·Label_0162;5571 ························break·Label_0162;
 5572 ························continue;
5520 ····················}5573 ····················}
5521 ····················final·SparseIntArray·mSoftApManagerReturnCodeCounts3·=·this.mSoftApManagerReturnCodeCounts; 
5522 ····················value·=·3; 
5523 ····················this.mSoftApManagerReturnCodeCounts.put(value,·mSoftApManagerReturnCodeCounts3.get(value)·+·n); 
5524 ················}5574 ················}
5525 ············}5575 ············}
5526 ············//·monitorexit(mLock)5576 ············//·monitorexit(mLock)
5527 ········}5577 ········}
5528 ····}5578 ····}
5529 ····5579 ····
5530 ····public·void·incrementSteeringRequestCountIncludingMboAssocRetryDelay()·{5580 ····public·void·incrementSteeringRequestCountIncludingMboAssocRetryDelay()·{
5531 ········synchronized·(this.mLock)·{5581 ········synchronized·(this.mLock)·{
5532 ············final·WifiMetricsProto$WifiLog·mWifiLogProto·=·this.mWifiLogProto;5582 ············final·WifiMetricsProto$WifiLog·mWifiLogProto·=·this.mWifiLogProto;
5533 ············++mWifiLogProto.numSteeringRequestIncludingMboAssocRetryDelay;5583 ············++mWifiLogProto.numSteeringRequestIncludingMboAssocRetryDelay;
5534 ········}5584 ········}
5535 ····}5585 ····}
5536 ····5586 ····
5537 ····public·void·incrementThroughputKbpsCount(int·n,·int·n2,·int·is24GHz)·{5587 ····public·void·incrementThroughputKbpsCount(final·int·estimatedTxKbps,·final·int·estimatedRxKbps,·int·is24GHz)·{
5538 ········synchronized·(this.mLock)·{5588 ········synchronized·(this.mLock)·{
5539 ············is24GHz·=·(ScanResult.is24GHz(is24GHz)·?·1·:·0);5589 ············is24GHz·=·(ScanResult.is24GHz(is24GHz)·?·1·:·0);
5540 ············if·(is24GHz·!=·0)·{5590 ············if·(is24GHz·!=·0)·{
5541 ················if·(n·>=·0)·{5591 ················if·(estimatedTxKbps·>=·0)·{
5542 ····················final·IntHistogram·mTxThroughputMbpsHistogram2G·=·this.mTxThroughputMbpsHistogram2G;5592 ····················this.mTxThroughputMbpsHistogram2G.increment(estimatedTxKbps·/·1000);
5543 ····················n·/=·1000;5593 ················}
5544 ····················mTxThroughputMbpsHistogram2G.increment(n);5594 ················if·(estimatedRxKbps·>=·0)·{
5545 ················}5595 ····················this.mRxThroughputMbpsHistogram2G.increment(estimatedRxKbps·/·1000);
5546 ················if·(n2·>=·0)·{ 
5547 ····················final·IntHistogram·mRxThroughputMbpsHistogram2G·=·this.mRxThroughputMbpsHistogram2G; 
5548 ····················n2·/=·1000; 
5549 ····················mRxThroughputMbpsHistogram2G.increment(n2); 
5550 ················}5596 ················}
5551 ············}5597 ············}
5552 ············else·{5598 ············else·{
5553 ················if·(n·>=·0)·{5599 ················if·(estimatedTxKbps·>=·0)·{
5554 ····················final·IntHistogram·mTxThroughputMbpsHistogramAbove2G·=·this.mTxThroughputMbpsHistogramAbove2G;5600 ····················this.mTxThroughputMbpsHistogramAbove2G.increment(estimatedTxKbps·/·1000);
5555 ····················n·/=·1000;5601 ················}
5556 ····················mTxThroughputMbpsHistogramAbove2G.increment(n);5602 ················if·(estimatedRxKbps·>=·0)·{
5557 ················}5603 ····················this.mRxThroughputMbpsHistogramAbove2G.increment(estimatedRxKbps·/·1000);
5558 ················if·(n2·>=·0)·{ 
5559 ····················final·IntHistogram·mRxThroughputMbpsHistogramAbove2G·=·this.mRxThroughputMbpsHistogramAbove2G; 
5560 ····················n2·/=·1000; 
5561 ····················mRxThroughputMbpsHistogramAbove2G.increment(n2); 
5562 ················}5604 ················}
5563 ············}5605 ············}
 5606 ············this.mWifiStatusBuilder.setEstimatedTxKbps(estimatedTxKbps);
 5607 ············this.mWifiStatusBuilder.setEstimatedRxKbps(estimatedRxKbps);
5564 ········}5608 ········}
5565 ····}5609 ····}
5566 ····5610 ····
5567 ····public·void·incrementTxLinkSpeedBandCount(final·int·n,·final·int·n2)·{5611 ····public·void·incrementTxLinkSpeedBandCount(final·int·n,·final·int·n2)·{
5568 ········if·(this.mContext.getResources().getBoolean(2130837513))·{5612 ········if·(this.mContext.getResources().getBoolean(2130837513))·{
5569 ············if·(n·>=·0)·{5613 ············if·(n·>=·0)·{
5570 ················synchronized·(this.mLock)·{5614 ················synchronized·(this.mLock)·{
Offset 5582, 15 lines modifiedOffset 5626, 15 lines modified
5582 ····················}5626 ····················}
5583 ····················else·if·(n2·<=·6425)·{5627 ····················else·if·(n2·<=·6425)·{
5584 ························this.mTxLinkSpeedCount6gLow.increment(n);5628 ························this.mTxLinkSpeedCount6gLow.increment(n);
5585 ····················}5629 ····················}
5586 ····················else·if·(n2·<=·6875)·{5630 ····················else·if·(n2·<=·6875)·{
5587 ························this.mTxLinkSpeedCount6gMid.increment(n);5631 ························this.mTxLinkSpeedCount6gMid.increment(n);
5588 ····················}5632 ····················}
5589 ····················else·if·(n2·<=·7105)·{5633 ····················else·if·(n2·<=·7115)·{
5590 ························this.mTxLinkSpeedCount6gHigh.increment(n);5634 ························this.mTxLinkSpeedCount6gHigh.increment(n);
5591 ····················}5635 ····················}
5592 ················}5636 ················}
5593 ············}5637 ············}
5594 ········}5638 ········}
5595 ····}5639 ····}
5596 ····5640 ····
Offset 5805, 15 lines modifiedOffset 5849, 15 lines modified
5805 ············sb.append("comparing·the·same·experiment·id:·");5849 ············sb.append("comparing·the·same·experiment·id:·");
5806 ············sb.append(n);5850 ············sb.append(n);
5807 ············Log.e("WifiMetrics",·sb.toString());5851 ············Log.e("WifiMetrics",·sb.toString());
5808 ············return;5852 ············return;
5809 ········}5853 ········}
5810 ········final·Pair·pair·=·new·Pair((Object)n,·(Object)n2);5854 ········final·Pair·pair·=·new·Pair((Object)n,·(Object)n2);
5811 ········synchronized·(this.mLock)·{5855 ········synchronized·(this.mLock)·{
5812 ············final·WifiMetrics$NetworkSelectionExperimentResults·wifiMetrics$NetworkSelectionExperimentResults·=·(WifiMetrics$NetworkSelectionExperimentResults)this.mNetworkSelectionExperimentPairNumChoicesCounts.computeIfAbsent(pair,·(Function<?·super·Pair,·?·extends·WifiMetrics$NetworkSelectionExperimentResults>)-$$Lambda$WifiMetrics$TjxJXDOgKTkkf3v-hb8u3gJN0Pg.INSTANCE);5856 ············final·WifiMetrics$NetworkSelectionExperimentResults·wifiMetrics$NetworkSelectionExperimentResults·=·(WifiMetrics$NetworkSelectionExperimentResults)this.mNetworkSelectionExperimentPairNumChoicesCounts.computeIfAbsent(pair,·(Function<?·super·Pair,·?·extends·WifiMetrics$NetworkSelectionExperimentResults>)-$$Lambda$WifiMetrics$Zw6AplRlKCKiR1pApp0LiBzd_GI.INSTANCE);
5813 ············IntCounter·intCounter;5857 ············IntCounter·intCounter;
5814 ············if·(b)·{5858 ············if·(b)·{
5815 ················intCounter·=·wifiMetrics$NetworkSelectionExperimentResults.sameSelectionNumChoicesCounter;5859 ················intCounter·=·wifiMetrics$NetworkSelectionExperimentResults.sameSelectionNumChoicesCounter;
5816 ············}5860 ············}
5817 ············else·{5861 ············else·{
5818 ················intCounter·=·wifiMetrics$NetworkSelectionExperimentResults.differentSelectionNumChoicesCounter;5862 ················intCounter·=·wifiMetrics$NetworkSelectionExperimentResults.differentSelectionNumChoicesCounter;
5819 ············}5863 ············}
Offset 5859, 15 lines modifiedOffset 5903, 17 lines modified
5859 ············}5903 ············}
5860 ············case·7:5904 ············case·7:
5861 ············case·8:5905 ············case·8:
5862 ············case·9:5906 ············case·9:
5863 ············case·11:5907 ············case·11:
5864 ············case·12:5908 ············case·12:
5865 ············case·13:5909 ············case·13:
5866 ············case·14:5910 ············case·14:·{
 5911 ················this.mWifiStatusBuilder.setValidated(true);
 5912 ············}
5867 ············case·15:5913 ············case·15:
5868 ············case·16:5914 ············case·16:
5869 ············case·17:5915 ············case·17:
5870 ············case·18:5916 ············case·18:
5871 ············case·19:5917 ············case·19:
5872 ············case·20:·{5918 ············case·20:·{
5873 ················final·WifiMetricsProto$StaEvent·wifiMetricsProto$StaEvent·=·new·WifiMetricsProto$StaEvent();5919 ················final·WifiMetricsProto$StaEvent·wifiMetricsProto$StaEvent·=·new·WifiMetricsProto$StaEvent();
Offset 6193, 26 lines modifiedOffset 6239, 38 lines modified
6193 ····6239 ····
6194 ····public·void·setNetworkSelectorExperimentId(final·int·mNetworkSelectorExperimentId)·{6240 ····public·void·setNetworkSelectorExperimentId(final·int·mNetworkSelectorExperimentId)·{
6195 ········synchronized·(this.mLock)·{6241 ········synchronized·(this.mLock)·{
6196 ············this.mNetworkSelectorExperimentId·=·mNetworkSelectorExperimentId;6242 ············this.mNetworkSelectorExperimentId·=·mNetworkSelectorExperimentId;
6197 ········}6243 ········}
6198 ····}6244 ····}
6199 ····6245 ····
6200 ····public·void·setNominatorForNetwork(final·int·n,·final·int·n2)·{6246 ····public·void·setNominatorForNetwork(int·userChoice,·int·networkId)·{
6201 ········final·Object·mLock·=·this.mLock;6247 ········final·Object·mLock·=·this.mLock;
6202 ········//·monitorenter(mLock)6248 ········//·monitorenter(mLock)
6203 ········Label_0019:·{6249 ········Label_0019:·{
6204 ············if·(n·!=·-1)·{6250 ············if·(userChoice·!=·-1)·{
6205 ················break·Label_0019;6251 ················break·Label_0019;
6206 ············}6252 ············}
6207 ············try·{6253 ············try·{
6208 ················//·monitorexit(mLock)6254 ················//·monitorexit(mLock)
6209 ················return;6255 ················return;
6210 ················this.mNetworkIdToNominatorId.put(n,·n2);6256 ················while·(true)·{
 6257 ····················final·WifiMetrics$WifiStatusBuilder·mWifiStatusBuilder·=·this.mWifiStatusBuilder;
 6258 ····················userChoice·=·1;
 6259 ····················mWifiStatusBuilder.setUserChoice((boolean)(userChoice·!=·0));
 6260 ····················Label_0071:·{
 6261 ························return;
 6262 ····················}
 6263 ····················this.mNetworkIdToNominatorId.put(userChoice,·networkId);
 6264 ····················networkId·=·this.mWifiStatusBuilder.getNetworkId();
 6265 ····················continue;
 6266 ················}
6211 ············}6267 ············}
 6268 ············//·iftrue(Label_0071:,·networkId·!=·8)
 6269 ············//·iftrue(Label_0071:,·networkId·!=·userChoice)
6212 ············finally·{6270 ············finally·{
6213 ············}6271 ············}
6214 ············//·monitorexit(mLock)6272 ············//·monitorexit(mLock)
6215 ········}6273 ········}
6216 ····}6274 ····}
6217 ····6275 ····
6218 ····public·void·setPasspointManager(final·PasspointManager·mPasspointManager)·{6276 ····public·void·setPasspointManager(final·PasspointManager·mPasspointManager)·{
Offset 6260, 21 lines modifiedOffset 6318, 25 lines modified
6260 ····public·void·setWifiScoreCard(final·WifiScoreCard·mWifiScoreCard)·{6318 ····public·void·setWifiScoreCard(final·WifiScoreCard·mWifiScoreCard)·{
6261 ········this.mWifiScoreCard·=·mWifiScoreCard;6319 ········this.mWifiScoreCard·=·mWifiScoreCard;
6262 ····}6320 ····}
6263 ····6321 ····
6264 ····public·void·setWifiState(final·int·mWifiState)·{6322 ····public·void·setWifiState(final·int·mWifiState)·{
6265 ········synchronized·(this.mLock)·{6323 ········synchronized·(this.mLock)·{
6266 ············this.mWifiState·=·mWifiState;6324 ············this.mWifiState·=·mWifiState;
6267 ············boolean·mWifiWinsUsabilityScore·=·true;6325 ············boolean·mWifiWinsUsabilityScore·=·false;
6268 ············final·int·n·=·3;6326 ············final·int·n·=·3;
6269 ············this.mWifiWins·=·(mWifiState·==·n·&&·mWifiWinsUsabilityScore);6327 ············final·boolean·b·=·true;
6270 ············if·(mWifiState·!=·n)·{6328 ············this.mWifiWins·=·(mWifiState·==·n·&&·b);
6271 ················mWifiWinsUsabilityScore·=·false;6329 ············if·(mWifiState·==·n)·{
 6330 ················mWifiWinsUsabilityScore·=·b;
6272 ············}6331 ············}
6273 ············this.mWifiWinsUsabilityScore·=·mWifiWinsUsabilityScore;6332 ············this.mWifiWinsUsabilityScore·=·mWifiWinsUsabilityScore;
 6333 ············if·(mWifiState·==·2·||·mWifiState·==·(b·?·1·:·0))·{
 6334 ················this.mWifiStatusBuilder·=·new·WifiMetrics$WifiStatusBuilder(this);
 6335 ············}
6274 ········}6336 ········}
6275 ····}6337 ····}
6276 ····6338 ····
6277 ····public·void·setWifiWakeEnabled(final·boolean·isWifiWakeEnabled)·{6339 ····public·void·setWifiWakeEnabled(final·boolean·isWifiWakeEnabled)·{
6278 ········synchronized·(this.mLock)·{6340 ········synchronized·(this.mLock)·{
6279 ············this.mWifiLogProto.isWifiWakeEnabled·=·isWifiWakeEnabled;6341 ············this.mWifiLogProto.isWifiWakeEnabled·=·isWifiWakeEnabled;
6280 ········}6342 ········}
Offset 6283, 17 lines modifiedOffset 6345, 17 lines modified
6283 ····public·int·startConnectionEvent(final·WifiConfiguration·wifiConfiguration,·String·access$200,·int·n)·{6345 ····public·int·startConnectionEvent(final·WifiConfiguration·wifiConfiguration,·String·access$200,·int·n)·{
6284 ········synchronized·(this.mLock)·{6346 ········synchronized·(this.mLock)·{
6285 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent·=·this.mCurrentConnectionEvent;6347 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent·=·this.mCurrentConnectionEvent;
6286 ············final·int·n2·=·7;6348 ············final·int·n2·=·7;
6287 ············final·int·n3·=·1;6349 ············final·int·n3·=·1;
6288 ············int·n4;6350 ············int·n4;
6289 ············if·(mCurrentConnectionEvent·!=·null)·{6351 ············if·(mCurrentConnectionEvent·!=·null)·{
6290 ················n4·=·(int)(this.mClock.getElapsedSinceBootMillis()·-·WifiMetrics$ConnectionEvent.access$1200(this.mCurrentConnectionEvent));6352 ················n4·=·(int)(this.mClock.getElapsedSinceBootMillis()·-·WifiMetrics$ConnectionEvent.access$1500(this.mCurrentConnectionEvent));
6291 ················if·(WifiMetrics$ConnectionEvent.access$200(this.mCurrentConnectionEvent)·!=·null·&&·WifiMetrics$ConnectionEvent.access$1300(this.mCurrentConnectionEvent)·!=·null·&&·wifiConfiguration·!=·null·&&·WifiMetrics$ConnectionEvent.access$200(this.mCurrentConnectionEvent).equals(wifiConfiguration.SSID)·&&·(WifiMetrics$ConnectionEvent.access$1300(this.mCurrentConnectionEvent).equals("any")·||·WifiMetrics$ConnectionEvent.access$1300(this.mCurrentConnectionEvent).equals(access$200)))·{6353 ················if·(WifiMetrics$ConnectionEvent.access$200(this.mCurrentConnectionEvent)·!=·null·&&·WifiMetrics$ConnectionEvent.access$1600(this.mCurrentConnectionEvent)·!=·null·&&·wifiConfiguration·!=·null·&&·WifiMetrics$ConnectionEvent.access$200(this.mCurrentConnectionEvent).equals(wifiConfiguration.SSID)·&&·(WifiMetrics$ConnectionEvent.access$1600(this.mCurrentConnectionEvent).equals("any")·||·WifiMetrics$ConnectionEvent.access$1600(this.mCurrentConnectionEvent).equals(access$200)))·{
6292 ····················WifiMetrics$ConnectionEvent.access$1302(this.mCurrentConnectionEvent,·access$200);6354 ····················WifiMetrics$ConnectionEvent.access$1602(this.mCurrentConnectionEvent,·access$200);
6293 ····················this.endConnectionEvent(8,·n3,·0);6355 ····················this.endConnectionEvent(8,·n3,·0);
6294 ················}6356 ················}
6295 ················else·{6357 ················else·{
6296 ····················this.endConnectionEvent(n2,·n3,·0);6358 ····················this.endConnectionEvent(n2,·n3,·0);
6297 ················}6359 ················}
6298 ············}6360 ············}
6299 ············else·{6361 ············else·{
Offset 6301, 28 lines modifiedOffset 6363, 28 lines modified
6301 ············}6363 ············}
6302 ············while·(this.mConnectionEventList.size()·>=·256)·{6364 ············while·(this.mConnectionEventList.size()·>=·256)·{
6303 ················this.mConnectionEventList.remove(0);6365 ················this.mConnectionEventList.remove(0);
6304 ············}6366 ············}
6305 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent2·=·new·WifiMetrics$ConnectionEvent(this,·(WifiMetrics$1)null);6367 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent2·=·new·WifiMetrics$ConnectionEvent(this,·(WifiMetrics$1)null);
6306 ············this.mCurrentConnectionEvent·=·mCurrentConnectionEvent2;6368 ············this.mCurrentConnectionEvent·=·mCurrentConnectionEvent2;
6307 ············mCurrentConnectionEvent2.mConnectionEvent.startTimeMillis·=·this.mClock.getWallClockMillis();6369 ············mCurrentConnectionEvent2.mConnectionEvent.startTimeMillis·=·this.mClock.getWallClockMillis();
6308 ············WifiMetrics$ConnectionEvent.access$1302(this.mCurrentConnectionEvent,·access$200);6370 ············WifiMetrics$ConnectionEvent.access$1602(this.mCurrentConnectionEvent,·access$200);
6309 ············this.mCurrentConnectionEvent.mConnectionEvent.roamType·=·n;6371 ············this.mCurrentConnectionEvent.mConnectionEvent.roamType·=·n;
6310 ············final·WifiMetricsProto$ConnectionEvent·mConnectionEvent·=·this.mCurrentConnectionEvent.mConnectionEvent;6372 ············final·WifiMetricsProto$ConnectionEvent·mConnectionEvent·=·this.mCurrentConnectionEvent.mConnectionEvent;
6311 ············n·=·this.mNetworkSelectorExperimentId;6373 ············n·=·this.mNetworkSelectorExperimentId;
6312 ············mConnectionEvent.networkSelectorExperimentId·=·n;6374 ············mConnectionEvent.networkSelectorExperimentId·=·n;
6313 ············this.mCurrentConnectionEvent.mRouterFingerPrint.updateFromWifiConfiguration(wifiConfiguration);6375 ············this.mCurrentConnectionEvent.mRouterFingerPrint.updateFromWifiConfiguration(wifiConfiguration);
6314 ············WifiMetrics$ConnectionEvent.access$1302(this.mCurrentConnectionEvent,·"any");6376 ············WifiMetrics$ConnectionEvent.access$1602(this.mCurrentConnectionEvent,·"any");
6315 ············WifiMetrics$ConnectionEvent.access$1202(this.mCurrentConnectionEvent,·this.mClock.getElapsedSinceBootMillis());6377 ············WifiMetrics$ConnectionEvent.access$1502(this.mCurrentConnectionEvent,·this.mClock.getElapsedSinceBootMillis());
6316 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent3·=·this.mCurrentConnectionEvent;6378 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent3·=·this.mCurrentConnectionEvent;
6317 ············n·=·this.mWifiState;6379 ············n·=·this.mWifiState;
6318 ············WifiMetrics$ConnectionEvent.access$1502(mCurrentConnectionEvent3,·n);6380 ············WifiMetrics$ConnectionEvent.access$1802(mCurrentConnectionEvent3,·n);
6319 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent4·=·this.mCurrentConnectionEvent;6381 ············final·WifiMetrics$ConnectionEvent·mCurrentConnectionEvent4·=·this.mCurrentConnectionEvent;
6320 ············n·=·(this.mScreenOn·?·1·:·0);6382 ············n·=·(this.mScreenOn·?·1·:·0);
6321 ············WifiMetrics$ConnectionEvent.access$1602(mCurrentConnectionEvent4,·(boolean)(n·!=·0));6383 ············WifiMetrics$ConnectionEvent.access$1902(mCurrentConnectionEvent4,·(boolean)(n·!=·0));
6322 ············this.mConnectionEventList.add(this.mCurrentConnectionEvent);6384 ············this.mConnectionEventList.add(this.mCurrentConnectionEvent);
6323 ············this.mScanResultRssiTimestampMillis·=·-1;6385 ············this.mScanResultRssiTimestampMillis·=·-1;
6324 ············if·(wifiConfiguration·!=·null)·{6386 ············if·(wifiConfiguration·!=·null)·{
6325 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent2·=·this.mCurrentConnectionEvent.mConnectionEvent;6387 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent2·=·this.mCurrentConnectionEvent.mConnectionEvent;
6326 ················n·=·wifiConfiguration.macRandomizationSetting;6388 ················n·=·wifiConfiguration.macRandomizationSetting;
6327 ················if·(n·==·n3)·{6389 ················if·(n·==·n3)·{
6328 ····················n·=·n3;6390 ····················n·=·n3;
Offset 6339, 15 lines modifiedOffset 6401, 15 lines modified
6339 ················mConnectionEvent4.connectionNominator·=·n;6401 ················mConnectionEvent4.connectionNominator·=·n;
6340 ················final·ScanResult·candidate·=·wifiConfiguration.getNetworkSelectionStatus().getCandidate();6402 ················final·ScanResult·candidate·=·wifiConfiguration.getNetworkSelectionStatus().getCandidate();
6341 ················if·(candidate·!=·null)·{6403 ················if·(candidate·!=·null)·{
6342 ····················this.mScanResultRssi·=·candidate.level;6404 ····················this.mScanResultRssi·=·candidate.level;
6343 ····················this.mScanResultRssiTimestampMillis·=·this.mClock.getElapsedSinceBootMillis();6405 ····················this.mScanResultRssiTimestampMillis·=·this.mClock.getElapsedSinceBootMillis();
6344 ················}6406 ················}
6345 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent5·=·this.mCurrentConnectionEvent.mConnectionEvent;6407 ················final·WifiMetricsProto$ConnectionEvent·mConnectionEvent5·=·this.mCurrentConnectionEvent.mConnectionEvent;
6346 ················n·=·this.mBssidBlocklistMonitor.getNumBlockedBssidsForSsid(wifiConfiguration.SSID);6408 ················n·=·this.mBssidBlocklistMonitor.updateAndGetNumBlockedBssidsForSsid(wifiConfiguration.SSID);
6347 ················mConnectionEvent5.numBssidInBlocklist·=·n;6409 ················mConnectionEvent5.numBssidInBlocklist·=·n;
6348 ················this.mCurrentConnectionEvent.mConnectionEvent.networkType·=·0;6410 ················this.mCurrentConnectionEvent.mConnectionEvent.networkType·=·0;
6349 ················this.mCurrentConnectionEvent.mConnectionEvent.isOsuProvisioned·=·false;6411 ················this.mCurrentConnectionEvent.mConnectionEvent.isOsuProvisioned·=·false;
6350 ················final·boolean·passpoint·=·wifiConfiguration.isPasspoint();6412 ················final·boolean·passpoint·=·wifiConfiguration.isPasspoint();
6351 ················n·=·2;6413 ················n·=·2;
6352 ················if·(passpoint)·{6414 ················if·(passpoint)·{
6353 ····················this.mCurrentConnectionEvent.mConnectionEvent.networkType·=·3;6415 ····················this.mCurrentConnectionEvent.mConnectionEvent.networkType·=·3;
Offset 6551, 39 lines modifiedOffset 6613, 45 lines modified
6551 ············Label_0028:·{6613 ············Label_0028:·{
6552 ················if·(n·==·2)·{6614 ················if·(n·==·2)·{
6553 ····················break·Label_0028;6615 ····················break·Label_0028;
6554 ················}6616 ················}
6555 ················try·{6617 ················try·{
6556 ····················//·monitorexit(mLock)6618 ····················//·monitorexit(mLock)
6557 ····················return;6619 ····················return;
6558 ····················List·list·=·this.mSoftApEventListLocalOnly;6620 ····················List·list·=·this.mSoftApEventListTethered;
 6621 ················Label_0051_Outer:
6559 ····················while·(true)·{6622 ····················while·(true)·{
6560 ························Label_0051:·{6623 ························n·=·list.size()·-·n2;
6561 ····························while·(true)·{6624 ····················Block_4_Outer:
6562 ································n·=·list.size()·-·n2;6625 ························while·(true)·{
6563 ································break·Label_0051;6626 ····························break·Label_0051;
 6627 ····························WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent·=·null;
 6628 ····························Block_6:·{
 6629 ································while·(true)·{
 6630 ····································wifiMetricsProto$SoftApConnectedClientsEvent·=·list.get(n);
 6631 ····································break·Block_6;
 6632 ····································continue;
 6633 ································}
6564 ································Label_0111:·{6634 ································Label_0111:·{
6565 ····································return;6635 ····································return;
6566 ································}6636 ································}
6567 ································list·=·this.mSoftApEventListTethered; 
6568 ································continue; 
6569 ····························}6637 ····························}
6570 ····························final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent; 
6571 ····························wifiMetricsProto$SoftApConnectedClientsEvent.maxNumClientsSettingInSoftapCapability·=·softApCapability.getMaxSupportedClients();6638 ····························wifiMetricsProto$SoftApConnectedClientsEvent.maxNumClientsSettingInSoftapCapability·=·softApCapability.getMaxSupportedClients();
6572 ····························return;6639 ····························return;
6573 ····························Label_0104:·{6640 ····························Label_0104:·{
6574 ································--n;6641 ································--n;
6575 ····························}6642 ····························}
 6643 ····························continue·Block_4_Outer;
6576 ························}6644 ························}
6577 ························final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent·=·(WifiMetricsProto$SoftApConnectedClientsEvent)list.get(n);6645 ························list·=·this.mSoftApEventListLocalOnly;
6578 ························continue;6646 ························continue·Label_0051_Outer;
6579 ····················}6647 ····················}
6580 ················}6648 ················}
6581 ················//·iftrue(Label_0111:,·n·<·0) 
6582 ················//·iftrue(Label_0104:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0)6649 ················//·iftrue(Label_0104:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0)
 6650 ················//·iftrue(Label_0111:,·n·<·0)
6583 ················finally·{6651 ················finally·{
6584 ················}6652 ················}
6585 ················//·monitorexit(mLock)6653 ················//·monitorexit(mLock)
6586 ············}6654 ············}
6587 ········}6655 ········}
6588 ····}6656 ····}
6589 ····6657 ····
Offset 6598, 39 lines modifiedOffset 6666, 36 lines modified
6598 ············Label_0028:·{6666 ············Label_0028:·{
6599 ················if·(n·==·2)·{6667 ················if·(n·==·2)·{
6600 ····················break·Label_0028;6668 ····················break·Label_0028;
6601 ················}6669 ················}
6602 ················try·{6670 ················try·{
6603 ····················//·monitorexit(mLock)6671 ····················//·monitorexit(mLock)
6604 ····················return;6672 ····················return;
 6673 ····················List·list·=·this.mSoftApEventListLocalOnly;
6605 ····················//·iftrue(Label_0137:,·n·<·0)6674 ····················//·iftrue(Label_0137:,·n·<·0)
6606 ····················while·(true)·{6675 ····················while·(true)·{
6607 ························List·list·=·null;6676 ····················Block_4:
6608 ····················Label_0051: 
6609 ························while·(true)·{6677 ························while·(true)·{
6610 ····························while·(true)·{6678 ····························Label_0041:·{
6611 ································n·=·list.size()·-·n2;6679 ································break·Label_0041;
6612 ································break·Label_0051;6680 ································break·Block_4;
6613 ································list·=·this.mSoftApEventListTethered; 
6614 ································continue; 
6615 ································break·Label_0051; 
6616 ································final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent;6681 ································final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent;
6617 ································wifiMetricsProto$SoftApConnectedClientsEvent.maxNumClientsSettingInSoftapConfiguration·=·softApConfiguration.getMaxNumberOfClients();6682 ································wifiMetricsProto$SoftApConnectedClientsEvent.maxNumClientsSettingInSoftapConfiguration·=·softApConfiguration.getMaxNumberOfClients();
6618 ································wifiMetricsProto$SoftApConnectedClientsEvent.shutdownTimeoutSettingInSoftapConfiguration·=·softApConfiguration.getShutdownTimeoutMillis();6683 ································wifiMetricsProto$SoftApConnectedClientsEvent.shutdownTimeoutSettingInSoftapConfiguration·=·softApConfiguration.getShutdownTimeoutMillis();
6619 ································wifiMetricsProto$SoftApConnectedClientsEvent.clientControlIsEnabled·=·softApConfiguration.isClientControlByUserEnabled();6684 ································wifiMetricsProto$SoftApConnectedClientsEvent.clientControlIsEnabled·=·softApConfiguration.isClientControlByUserEnabled();
6620 ································Label_0137:·{6685 ································Label_0137:·{
6621 ····································return;6686 ····································return;
6622 ································}6687 ································}
6623 ································list·=·this.mSoftApEventListLocalOnly;6688 ································Label_0130:
6624 ································continue; 
6625 ····························} 
6626 ····························Label_0130:·{ 
6627 ································--n;6689 ································--n;
 6690 ································continue;
 6691 ································list·=·this.mSoftApEventListTethered;
6628 ····························}6692 ····························}
6629 ····························continue·Label_0051;6693 ····························n·=·list.size()·-·n2;
 6694 ····························continue;
6630 ························}6695 ························}
6631 ························final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent·=·(WifiMetricsProto$SoftApConnectedClientsEvent)list.get(n);6696 ························final·WifiMetricsProto$SoftApConnectedClientsEvent·wifiMetricsProto$SoftApConnectedClientsEvent·=·(WifiMetricsProto$SoftApConnectedClientsEvent)list.get(n);
6632 ························continue;6697 ························continue;
6633 ····················}6698 ····················}
6634 ················}6699 ················}
6635 ················//·iftrue(Label_0130:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0)6700 ················//·iftrue(Label_0130:,·wifiMetricsProto$SoftApConnectedClientsEvent·==·null·||·wifiMetricsProto$SoftApConnectedClientsEvent.eventType·!=·0)
6636 ················finally·{6701 ················finally·{
Offset 6658, 160 lines modifiedOffset 6723, 166 lines modified
6658 ················break·Label_0018;6723 ················break·Label_0018;
6659 ············}6724 ············}
6660 ············try·{6725 ············try·{
6661 ············}6726 ············}
6662 ············//·monitorexit(mLock)6727 ············//·monitorexit(mLock)
6663 ············finally·{6728 ············finally·{
6664 ················//·monitorexit(mLock)6729 ················//·monitorexit(mLock)
 6730 ················//·iftrue(Label_1159:,·mScoreBreachLowTimeMillis·==·mScoreBreachLowTimeMillis2)
6665 ················//·iftrue(Label_1064:,·mWifiUsabilityStatsCounter·<·100)6731 ················//·iftrue(Label_1064:,·mWifiUsabilityStatsCounter·<·100)
6666 ················//·iftrue(Label_1159:,·n2·>·90000L) 
6667 ················//·iftrue(Label_1159:,·n2·<·60000L) 
6668 ················//·iftrue(Label_1159:,·mScoreBreachLowTimeMillis2·==·mScoreBreachLowTimeMillis) 
6669 ················//·iftrue(Label_0097:,·wifiLinkLayerStats·!=·null) 
6670 ················//·iftrue(Label_0634:,·wifiLinkLayerStats$ChannelStats·==·null) 
6671 ················//·iftrue(Label_0928:,·mProbeStatusSinceLastUpdate·==·probeStatusSinceLastUpdate) 
6672 ················//·iftrue(Label_0938:,·mProbeStatusSinceLastUpdate·==·n)6732 ················//·iftrue(Label_0938:,·mProbeStatusSinceLastUpdate·==·n)
6673 ················//·iftrue(Label_0134:,·this.mWifiUsabilityStatsEntriesList.size()·>=·40)6733 ················//·iftrue(Label_0634:,·wifiLinkLayerStats$ChannelStats·==·null)
6674 ················//·iftrue(Label_0918:,·mProbeStatusSinceLastUpdate·==·probeStatusSinceLastUpdate2)6734 ················//·iftrue(Label_1159:,·n3·<·60000L)
 6735 ················//·iftrue(Label_0918:,·mProbeStatusSinceLastUpdate·==·probeStatusSinceLastUpdate)
6675 ················//·monitorexit(mLock)6736 ················//·monitorexit(mLock)
6676 ············Label_0097_Outer:6737 ················//·iftrue(Label_0097:,·wifiLinkLayerStats·!=·null)
 6738 ················//·iftrue(Label_1159:,·n3·>·90000L)
 6739 ················//·iftrue(Label_0134:,·this.mWifiUsabilityStatsEntriesList.size()·>=·40)
 6740 ················WifiMetricsProto$WifiUsabilityStatsEntry·wifiMetricsProto$WifiUsabilityStatsEntry;
 6741 ················long·mScoreBreachLowTimeMillis;
 6742 ················long·mScoreBreachLowTimeMillis2;
 6743 ················String·s;
 6744 ················StringBuilder·sb;
 6745 ················boolean·isSameBssidAndFreq;
 6746 ················int·n;
 6747 ················int·mWifiUsabilityStatsCounter;
 6748 ················WifiLinkLayerStats$ChannelStats·wifiLinkLayerStats$ChannelStats;
 6749 ················String·mLastBssid;
 6750 ················int·n2;
 6751 ················int·mProbeStatusSinceLastUpdate;
 6752 ················long·n3;
 6753 ················int·probeStatusSinceLastUpdate;
 6754 ················int·probeStatusSinceLastUpdate2;
 6755 ················Label_0945:Block_12_Outer:
6677 ················while·(true)·{6756 ················while·(true)·{
6678 ····················int·n·=·0;6757 ····················while·(true)·{
6679 ····················int·n3·=·0;6758 ····················Label_0154:
6680 ····················Block_14:·{ 
6681 ························while·(true)·{6759 ························while·(true)·{
6682 ····························Block_4:·{6760 ····························Label_1064_Outer:Block_13_Outer:Block_4_Outer:Block_17_Outer:
6683 ································WifiMetricsProto$WifiUsabilityStatsEntry·wifiMetricsProto$WifiUsabilityStatsEntry·=·null;6761 ····························while·(true)·{
6684 ································boolean·isSameBssidAndFreq·=·false;6762 ································wifiMetricsProto$WifiUsabilityStatsEntry·=·new·WifiMetricsProto$WifiUsabilityStatsEntry();
6685 ····························Label_0154_Outer:6763 ································break·Label_0154;
6686 ································while·(true)·{6764 ································Label_0097:·{
6687 ································Block_12: 
6688 ····································while·(true)·{6765 ····································while·(true)·{
6689 ········································Block_17:·{6766 ········································Block_16:·{
6690 ············································while·(true)·{6767 ············································while·(true)·{
6691 ················································Label_0634:·{6768 ················································while·(true)·{
6692 ····················································WifiLinkLayerStats$ChannelStats·wifiLinkLayerStats$ChannelStats·=·null; 
6693 ····················································int·mWifiUsabilityStatsCounter; 
6694 ····················································long·mScoreBreachLowTimeMillis; 
6695 ····················································long·n2; 
6696 ····················································long·mScoreBreachLowTimeMillis2; 
6697 ····················································Block_16_Outer:Block_15_Outer: 
6698 ····················································while·(true)·{6769 ····················································while·(true)·{
6699 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioOnFreqTimeMs·=·wifiLinkLayerStats$ChannelStats.radioOnTimeMs;6770 ····················································Block_15:
6700 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalCcaBusyFreqTimeMs·=·wifiLinkLayerStats$ChannelStats.ccaBusyTimeMs; 
6701 ························································break·Label_0634; 
6702 ························································wifiMetricsProto$WifiUsabilityStatsEntry.probeElapsedTimeSinceLastUpdateMs·=·this.mProbeElapsedTimeSinceLastUpdateMs; 
6703 ························································wifiMetricsProto$WifiUsabilityStatsEntry.probeMcsRateSinceLastUpdate·=·this.mProbeMcsRateSinceLastUpdate; 
6704 ························································wifiMetricsProto$WifiUsabilityStatsEntry.rxLinkSpeedMbps·=·wifiInfo.getRxLinkSpeedMbps(); 
6705 ························································wifiMetricsProto$WifiUsabilityStatsEntry.isSameBssidAndFreq·=·isSameBssidAndFreq; 
6706 ························································wifiMetricsProto$WifiUsabilityStatsEntry.seqNumInsideFramework·=·this.mSeqNumInsideFramework; 
6707 ························································wifiMetricsProto$WifiUsabilityStatsEntry.deviceMobilityState·=·this.mCurrentDeviceMobilityState; 
6708 ························································this.mWifiUsabilityStatsEntriesList.add(wifiMetricsProto$WifiUsabilityStatsEntry); 
6709 ························································mWifiUsabilityStatsCounter·=·this.mWifiUsabilityStatsCounter·+·n; 
6710 ························································this.mWifiUsabilityStatsCounter·=·mWifiUsabilityStatsCounter; 
6711 ························································break·Block_14; 
6712 ························································while·(true)·{6771 ························································while·(true)·{
6713 ····························································while·(true)·{6772 ····························································mScoreBreachLowTimeMillis·=·this.mScoreBreachLowTimeMillis;
6714 ································································this.mScoreBreachLowTimeMillis·=·mScoreBreachLowTimeMillis;6773 ····························································mScoreBreachLowTimeMillis2·=·-1;
6715 ································································break·Block_17;6774 ····························································break·Block_15;
6716 ································································n2·=·this.mClock.getElapsedSinceBootMillis()·-·this.mScoreBreachLowTimeMillis;6775 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·0;
6717 ································································continue·Block_15_Outer;6776 ····························································s·=·"WifiMetrics";
 6777 ····························································sb·=·new·StringBuilder();
 6778 ····························································sb.append("Unknown·link·probe·status:·");
 6779 ····························································sb.append(this.mProbeStatusSinceLastUpdate);
 6780 ····························································Log.e(s,·sb.toString());
 6781 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.probeElapsedTimeSinceLastUpdateMs·=·this.mProbeElapsedTimeSinceLastUpdateMs;
 6782 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.probeMcsRateSinceLastUpdate·=·this.mProbeMcsRateSinceLastUpdate;
 6783 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.rxLinkSpeedMbps·=·wifiInfo.getRxLinkSpeedMbps();
 6784 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.isSameBssidAndFreq·=·isSameBssidAndFreq;
 6785 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.seqNumInsideFramework·=·this.mSeqNumInsideFramework;
 6786 ····························································wifiMetricsProto$WifiUsabilityStatsEntry.deviceMobilityState·=·this.mCurrentDeviceMobilityState;
 6787 ····························································this.mWifiUsabilityStatsEntriesList.add(wifiMetricsProto$WifiUsabilityStatsEntry);
 6788 ····························································mWifiUsabilityStatsCounter·=·this.mWifiUsabilityStatsCounter·+·n;
 6789 ····························································this.mWifiUsabilityStatsCounter·=·mWifiUsabilityStatsCounter;
 6790 ····························································Block_14:·{
 6791 ································································break·Block_14;
 6792 ································································while·(true)·{
 6793 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioOnFreqTimeMs·=·wifiLinkLayerStats$ChannelStats.radioOnTimeMs;
 6794 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalCcaBusyFreqTimeMs·=·wifiLinkLayerStats$ChannelStats.ccaBusyTimeMs;
 6795 ····································································Label_0634:·{
 6796 ········································································wifiMetricsProto$WifiUsabilityStatsEntry.totalBeaconRx·=·wifiLinkLayerStats.beacon_rx;
 6797 ····································································}
 6798 ····································································mLastBssid·=·this.mLastBssid;
 6799 ····································································n2·=·-1;
 6800 ····································································n·=·1;
 6801 ····································································isSameBssidAndFreq·=·((mLastBssid·==·null·||·this.mLastFrequency·==·n2·||·(this.mLastBssid.equals(wifiInfo.getBSSID())·&&·this.mLastFrequency·==·wifiInfo.getFrequency()))·&&·n);
 6802 ····································································this.mLastBssid·=·wifiInfo.getBSSID();
 6803 ····································································this.mLastFrequency·=·wifiInfo.getFrequency();
 6804 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.wifiScore·=·this.mLastScoreNoReset;
 6805 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.wifiUsabilityScore·=·this.mLastWifiUsabilityScoreNoReset;
 6806 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.seqNumToFramework·=·this.mSeqNumToFramework;
 6807 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.predictionHorizonSec·=·this.mLastPredictionHorizonSecNoReset;
 6808 ····································································mProbeStatusSinceLastUpdate·=·this.mProbeStatusSinceLastUpdate;
 6809 ····································································break·Label_0154;
 6810 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.timeStampMs·=·wifiLinkLayerStats.timeStampInMs;
 6811 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxSuccess·=·wifiLinkLayerStats.txmpdu_be·+·wifiLinkLayerStats.txmpdu_bk·+·wifiLinkLayerStats.txmpdu_vi·+·wifiLinkLayerStats.txmpdu_vo;
 6812 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxRetries·=·wifiLinkLayerStats.retries_be·+·wifiLinkLayerStats.retries_bk·+·wifiLinkLayerStats.retries_vi·+·wifiLinkLayerStats.retries_vo;
 6813 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxBad·=·wifiLinkLayerStats.lostmpdu_be·+·wifiLinkLayerStats.lostmpdu_bk·+·wifiLinkLayerStats.lostmpdu_vi·+·wifiLinkLayerStats.lostmpdu_vo;
 6814 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRxSuccess·=·wifiLinkLayerStats.rxmpdu_be·+·wifiLinkLayerStats.rxmpdu_bk·+·wifiLinkLayerStats.rxmpdu_vi·+·wifiLinkLayerStats.rxmpdu_vo;
 6815 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioOnTimeMs·=·wifiLinkLayerStats.on_time;
 6816 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioTxTimeMs·=·wifiLinkLayerStats.tx_time;
 6817 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioRxTimeMs·=·wifiLinkLayerStats.rx_time;
 6818 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalScanTimeMs·=·wifiLinkLayerStats.on_time_scan;
 6819 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalNanScanTimeMs·=·wifiLinkLayerStats.on_time_nan_scan;
 6820 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalBackgroundScanTimeMs·=·wifiLinkLayerStats.on_time_background_scan;
 6821 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalRoamScanTimeMs·=·wifiLinkLayerStats.on_time_roam_scan;
 6822 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalPnoScanTimeMs·=·wifiLinkLayerStats.on_time_pno_scan;
 6823 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.totalHotspot2ScanTimeMs·=·wifiLinkLayerStats.on_time_hs20_scan;
 6824 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.rssi·=·wifiInfo.getRssi();
 6825 ····································································wifiMetricsProto$WifiUsabilityStatsEntry.linkSpeedMbps·=·wifiInfo.getLinkSpeed();
 6826 ····································································wifiLinkLayerStats$ChannelStats·=·(WifiLinkLayerStats$ChannelStats)wifiLinkLayerStats.channelStatsMap.get(wifiInfo.getFrequency());
 6827 ····································································continue·Block_4_Outer;
 6828 ································································}
6718 ····························································}6829 ····························································}
6719 ····························································mScoreBreachLowTimeMillis2·=·this.mScoreBreachLowTimeMillis;6830 ····························································this.addToWifiUsabilityStatsList(n,·0,·n2);
6720 ····························································mScoreBreachLowTimeMillis·=·-1;6831 ····························································continue·Block_13_Outer;
6721 ····························································continue·Label_0154_Outer; 
6722 ························································}6832 ························································}
6723 ························································break·Block_4;6833 ························································n3·=·this.mClock.getElapsedSinceBootMillis()·-·this.mScoreBreachLowTimeMillis;
6724 ························································wifiMetricsProto$WifiUsabilityStatsEntry.timeStampMs·=·wifiLinkLayerStats.timeStampInMs;6834 ························································break·Block_16;
6725 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxSuccess·=·wifiLinkLayerStats.txmpdu_be·+·wifiLinkLayerStats.txmpdu_bk·+·wifiLinkLayerStats.txmpdu_vi·+·wifiLinkLayerStats.txmpdu_vo;6835 ························································wifiLinkLayerStats·=·new·WifiLinkLayerStats();
6726 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxRetries·=·wifiLinkLayerStats.retries_be·+·wifiLinkLayerStats.retries_bk·+·wifiLinkLayerStats.retries_vi·+·wifiLinkLayerStats.retries_vo;6836 ························································wifiLinkLayerStats.timeStampInMs·=·this.mClock.getElapsedSinceBootMillis();
6727 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalTxBad·=·wifiLinkLayerStats.lostmpdu_be·+·wifiLinkLayerStats.lostmpdu_bk·+·wifiLinkLayerStats.lostmpdu_vi·+·wifiLinkLayerStats.lostmpdu_vo;6837 ························································wifiLinkLayerStats.txmpdu_be·=·wifiInfo.txSuccess;
6728 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRxSuccess·=·wifiLinkLayerStats.rxmpdu_be·+·wifiLinkLayerStats.rxmpdu_bk·+·wifiLinkLayerStats.rxmpdu_vi·+·wifiLinkLayerStats.rxmpdu_vo;6838 ························································wifiLinkLayerStats.retries_be·=·wifiInfo.txRetries;
6729 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioOnTimeMs·=·wifiLinkLayerStats.on_time;6839 ························································wifiLinkLayerStats.lostmpdu_be·=·wifiInfo.txBad;
6730 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioTxTimeMs·=·wifiLinkLayerStats.tx_time;6840 ························································wifiLinkLayerStats.rxmpdu_be·=·wifiInfo.rxSuccess;
6731 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRadioRxTimeMs·=·wifiLinkLayerStats.rx_time;6841 ························································break·Label_0097;
6732 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalScanTimeMs·=·wifiLinkLayerStats.on_time_scan;6842 ························································probeStatusSinceLastUpdate·=·3;
6733 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalNanScanTimeMs·=·wifiLinkLayerStats.on_time_nan_scan;6843 ························································continue·Block_4_Outer;
6734 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalBackgroundScanTimeMs·=·wifiLinkLayerStats.on_time_background_scan; 
6735 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalRoamScanTimeMs·=·wifiLinkLayerStats.on_time_roam_scan; 
6736 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalPnoScanTimeMs·=·wifiLinkLayerStats.on_time_pno_scan; 
6737 ························································wifiMetricsProto$WifiUsabilityStatsEntry.totalHotspot2ScanTimeMs·=·wifiLinkLayerStats.on_time_hs20_scan; 
6738 ························································wifiMetricsProto$WifiUsabilityStatsEntry.rssi·=·wifiInfo.getRssi(); 
6739 ························································wifiMetricsProto$WifiUsabilityStatsEntry.linkSpeedMbps·=·wifiInfo.getLinkSpeed(); 
6740 ························································wifiLinkLayerStats$ChannelStats·=·(WifiLinkLayerStats$ChannelStats)wifiLinkLayerStats.channelStatsMap.get(wifiInfo.getFrequency()); 
6741 ························································continue·Block_16_Outer; 
6742 ····················································}6844 ····················································}
6743 ····················································final·int·probeStatusSinceLastUpdate·=·2;6845 ····················································this.sendWifiUsabilityStats(this.mSeqNumInsideFramework,·isSameBssidAndFreq,·this.createNewWifiUsabilityStatsEntryParcelable(wifiMetricsProto$WifiUsabilityStatsEntry));
6744 ····················································break·Block_12;6846 ····················································this.mSeqNumInsideFramework·+=·n;
 6847 ····················································this.mProbeStatusSinceLastUpdate·=·n;
 6848 ····················································this.mProbeElapsedTimeSinceLastUpdateMs·=·n2;
 6849 ····················································this.mProbeMcsRateSinceLastUpdate·=·n2;
 6850 ····················································return;
 6851 ····················································Label_0928:·{
 6852 ························································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·probeStatusSinceLastUpdate2;
 6853 ····················································}
 6854 ····················································continue·Label_0945;
 6855 ····················································continue·Block_12_Outer;
6745 ················································}6856 ················································}
6746 ················································wifiMetricsProto$WifiUsabilityStatsEntry.totalBeaconRx·=·wifiLinkLayerStats.beacon_rx;6857 ················································this.addToWifiUsabilityStatsList(n,·0,·n2);
6747 ················································final·String·mLastBssid·=·this.mLastBssid;6858 ················································continue·Block_17_Outer;
6748 ················································n3·=·-1; 
6749 ················································n·=·1; 
6750 ················································isSameBssidAndFreq·=·((mLastBssid·==·null·||·this.mLastFrequency·==·n3·||·(this.mLastBssid.equals(wifiInfo.getBSSID())·&&·this.mLastFrequency·==·wifiInfo.getFrequency()))·&&·n); 
6751 ················································this.mLastBssid·=·wifiInfo.getBSSID(); 
6752 ················································this.mLastFrequency·=·wifiInfo.getFrequency(); 
6753 ················································wifiMetricsProto$WifiUsabilityStatsEntry.wifiScore·=·this.mLastScoreNoReset; 
6754 ················································wifiMetricsProto$WifiUsabilityStatsEntry.wifiUsabilityScore·=·this.mLastWifiUsabilityScoreNoReset; 
6755 ················································wifiMetricsProto$WifiUsabilityStatsEntry.seqNumToFramework·=·this.mSeqNumToFramework; 
6756 ················································wifiMetricsProto$WifiUsabilityStatsEntry.predictionHorizonSec·=·this.mLastPredictionHorizonSecNoReset; 
6757 ················································final·int·mProbeStatusSinceLastUpdate·=·this.mProbeStatusSinceLastUpdate; 
6758 ················································continue·Label_0097_Outer; 
6759 ············································} 
6760 ········································} 
6761 ········································this.addToWifiUsabilityStatsList(n,·0,·n3); 
6762 ········································break·Label_0154_Outer; 
6763 ········································Block_5:·{ 
6764 ············································break·Block_5; 
6765 ············································Label_0918:·{ 
6766 ················································final·int·probeStatusSinceLastUpdate2; 
6767 ················································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·probeStatusSinceLastUpdate2; 
6768 ············································}6859 ············································}
6769 ············································continue·Label_0154_Outer; 
6770 ········································}6860 ········································}
6771 ········································wifiMetricsProto$WifiUsabilityStatsEntry·=·new·WifiMetricsProto$WifiUsabilityStatsEntry();6861 ········································this.mScoreBreachLowTimeMillis·=·mScoreBreachLowTimeMillis2;
6772 ········································continue·Label_0097_Outer;6862 ········································continue;
6773 ········································Label_0134:·{ 
6774 ············································wifiMetricsProto$WifiUsabilityStatsEntry·=·this.mWifiUsabilityStatsEntriesList.remove(); 
6775 ········································} 
6776 ········································continue·Label_0097_Outer; 
6777 ····································}6863 ····································}
6778 ····································final·int·probeStatusSinceLastUpdate2·=·3;6864 ····································Label_0918:·{
6779 ····································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·0;6865 ········································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·probeStatusSinceLastUpdate;
6780 ····································final·String·s·=·"WifiMetrics"; 
6781 ····································final·StringBuilder·sb·=·new·StringBuilder(); 
6782 ····································sb.append("Unknown·link·probe·status:·"); 
6783 ····································sb.append(this.mProbeStatusSinceLastUpdate); 
6784 ····································Log.e(s,·sb.toString()); 
6785 ····································continue·Label_0154_Outer; 
6786 ····································Label_0938:·{ 
6787 ········································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·n; 
6788 ····································}6866 ····································}
6789 ····································continue·Label_0154_Outer;6867 ····································continue·Label_0945;
6790 ····································int·probeStatusSinceLastUpdate·=·0; 
6791 ····································Label_0928: 
6792 ····································wifiMetricsProto$WifiUsabilityStatsEntry.probeStatusSinceLastUpdate·=·probeStatusSinceLastUpdate; 
6793 ····································continue·Label_0154_Outer; 
6794 ································}6868 ································}
6795 ································this.sendWifiUsabilityStats(this.mSeqNumInsideFramework,·isSameBssidAndFreq,·this.createNewWifiUsabilityStatsEntryParcelable(wifiMetricsProto$WifiUsabilityStatsEntry));6869 ································continue·Label_1064_Outer;
Max diff block lines reached; 1373/80363 bytes (1.71%) of diff not shown.