Implement NetworkRequestsState atom
Bug: 278833398 Test: atest FrameworksNetTests Change-Id: I95a8c8dddd2d8f6863fe64cd4a65ef48dfb5153a
This commit is contained in:
parent
c45efc312e
commit
878fd25d84
1 changed files with 730 additions and 0 deletions
|
|
@ -328,6 +328,7 @@ import com.android.server.connectivity.NetworkNotificationManager.NotificationTy
|
|||
import com.android.server.connectivity.NetworkOffer;
|
||||
import com.android.server.connectivity.NetworkPreferenceList;
|
||||
import com.android.server.connectivity.NetworkRanker;
|
||||
import com.android.server.connectivity.NetworkRequestStateStatsMetrics;
|
||||
import com.android.server.connectivity.PermissionMonitor;
|
||||
import com.android.server.connectivity.ProfileNetworkPreferenceInfo;
|
||||
import com.android.server.connectivity.ProxyTracker;
|
||||
|
|
@ -941,6 +942,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
|
||||
private final IpConnectivityLog mMetricsLog;
|
||||
|
||||
@Nullable private final NetworkRequestStateStatsMetrics mNetworkRequestStateStatsMetrics;
|
||||
|
||||
@GuardedBy("mBandwidthRequests")
|
||||
private final SparseArray<Integer> mBandwidthRequests = new SparseArray<>(10);
|
||||
|
||||
|
|
@ -1421,6 +1424,19 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
return new AutomaticOnOffKeepaliveTracker(c, h);
|
||||
}
|
||||
|
||||
/**
|
||||
* @see NetworkRequestStateStatsMetrics
|
||||
*/
|
||||
public NetworkRequestStateStatsMetrics makeNetworkRequestStateStatsMetrics(
|
||||
Context context) {
|
||||
// We currently have network requests metric for Watch devices only
|
||||
if (context.getPackageManager().hasSystemFeature(FEATURE_WATCH)) {
|
||||
return new NetworkRequestStateStatsMetrics();
|
||||
} else {
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* @see BatteryStatsManager
|
||||
*/
|
||||
|
|
@ -1654,6 +1670,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
new RequestInfoPerUidCounter(MAX_NETWORK_REQUESTS_PER_SYSTEM_UID - 1);
|
||||
|
||||
mMetricsLog = logger;
|
||||
mNetworkRequestStateStatsMetrics = mDeps.makeNetworkRequestStateStatsMetrics(mContext);
|
||||
final NetworkRequest defaultInternetRequest = createDefaultRequest();
|
||||
mDefaultRequest = new NetworkRequestInfo(
|
||||
Process.myUid(), defaultInternetRequest, null,
|
||||
|
|
@ -5324,6 +5341,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
updateSignalStrengthThresholds(network, "REGISTER", req);
|
||||
}
|
||||
}
|
||||
} else if (req.isRequest() && mNetworkRequestStateStatsMetrics != null) {
|
||||
mNetworkRequestStateStatsMetrics.onNetworkRequestReceived(req);
|
||||
}
|
||||
}
|
||||
|
||||
|
|
@ -5541,6 +5560,8 @@ public class ConnectivityService extends IConnectivityManager.Stub
|
|||
}
|
||||
if (req.isListen()) {
|
||||
removeListenRequestFromNetworks(req);
|
||||
} else if (req.isRequest() && mNetworkRequestStateStatsMetrics != null) {
|
||||
mNetworkRequestStateStatsMetrics.onNetworkRequestRemoved(req);
|
||||
}
|
||||
}
|
||||
nri.unlinkDeathRecipient();
|
||||
|
|
|
|||
Loading…
Reference in a new issue