[DU03]Remove INetworkStatsService from BatteryStatsImpl
BatteryStatsImpl is using INetworkStatsService APIs, which
cannot be accessed after moving into the mainline module. So, replace
and remove those hidden API usages.
Bug: 210066922
Test: atest BatteryStatsImplTest WifiPowerCalculatorTest
MobileRadioPowerCalculatorTest
CTS-Coverage-Bug: 213437796
(cherry-picked from ag/16548638)
Change-Id: I584897ff8ba303c717a9df3756c9f6778c1cfb10
Merged-In: I584897ff8ba303c717a9df3756c9f6778c1cfb10
This commit is contained in:
@@ -54,6 +54,7 @@ import com.android.net.module.util.NetworkIdentityUtils;
|
|||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Objects;
|
import java.util.Objects;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Provides access to network usage history and statistics. Usage data is collected in
|
* Provides access to network usage history and statistics. Usage data is collected in
|
||||||
@@ -535,6 +536,31 @@ public class NetworkStatsManager {
|
|||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Query realtime network usage statistics details with interfaces constrains.
|
||||||
|
* Return snapshot of current UID statistics, including any {@link TrafficStats#UID_TETHERING},
|
||||||
|
* video calling data usage and count of network operations that set by
|
||||||
|
* {@link TrafficStats#incrementOperationCount}. The returned data doesn't include any
|
||||||
|
* statistics that is reported by {@link NetworkStatsProvider}.
|
||||||
|
*
|
||||||
|
* @param requiredIfaces A list of interfaces the stats should be restricted to, or
|
||||||
|
* {@link NetworkStats#INTERFACES_ALL}.
|
||||||
|
*
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
//@SystemApi
|
||||||
|
@RequiresPermission(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK)
|
||||||
|
@NonNull public android.net.NetworkStats getDetailedUidStats(
|
||||||
|
@NonNull Set<String> requiredIfaces) {
|
||||||
|
Objects.requireNonNull(requiredIfaces, "requiredIfaces cannot be null");
|
||||||
|
try {
|
||||||
|
return mService.getDetailedUidStats(requiredIfaces.toArray(new String[0]));
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
if (DBG) Log.d(TAG, "Remote exception when get detailed uid stats");
|
||||||
|
throw e.rethrowFromSystemServer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/** @hide */
|
/** @hide */
|
||||||
public void registerUsageCallback(NetworkTemplate template, int networkType,
|
public void registerUsageCallback(NetworkTemplate template, int networkType,
|
||||||
long thresholdBytes, UsageCallback callback, @Nullable Handler handler) {
|
long thresholdBytes, UsageCallback callback, @Nullable Handler handler) {
|
||||||
|
|||||||
@@ -922,6 +922,7 @@ public class NetworkStatsService extends INetworkStatsService.Stub {
|
|||||||
|
|
||||||
@Override
|
@Override
|
||||||
public NetworkStats getDetailedUidStats(String[] requiredIfaces) {
|
public NetworkStats getDetailedUidStats(String[] requiredIfaces) {
|
||||||
|
enforceAnyPermissionOf(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
|
||||||
try {
|
try {
|
||||||
final String[] ifacesToQuery =
|
final String[] ifacesToQuery =
|
||||||
mStatsFactory.augmentWithStackedInterfaces(requiredIfaces);
|
mStatsFactory.augmentWithStackedInterfaces(requiredIfaces);
|
||||||
|
|||||||
Reference in New Issue
Block a user