Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 767c2e79 authored by Frank's avatar Frank
Browse files

[DU03-4]Add NETWORK_STACK Permission check for NetworkStatsService API

1. getUidStatsForTransport API

Bug: 210066922
Test: atest BatteryStatsImplTest WifiPowerCalculatorTest
            MobileRadioPowerCalculatorTest NetworkStatsServiceTest

(cherry-picked from ag/16816095)

Change-Id: I022c34b5af87fe3ff6857ea264bac2f7098eaed4
Merged-In: I022c34b5af87fe3ff6857ea264bac2f7098eaed4
parent 7a25b6f3
Loading
Loading
Loading
Loading
+6 −2
Original line number Diff line number Diff line
@@ -699,7 +699,9 @@ public class NetworkStatsManager {
     * @hide
     */
    @SystemApi
    @RequiresPermission(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_STACK})
    @NonNull public android.net.NetworkStats getMobileUidStats() {
        try {
            return mService.getUidStatsForTransport(TRANSPORT_CELLULAR);
@@ -723,7 +725,9 @@ public class NetworkStatsManager {
     * @hide
     */
    @SystemApi
    @RequiresPermission(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK)
    @RequiresPermission(anyOf = {
            NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK,
            android.Manifest.permission.NETWORK_STACK})
    @NonNull public android.net.NetworkStats getWifiUidStats() {
        try {
            return mService.getUidStatsForTransport(TRANSPORT_WIFI);
+1 −1
Original line number Diff line number Diff line
@@ -1123,7 +1123,7 @@ public class NetworkStatsService extends INetworkStatsService.Stub {

    @Override
    public NetworkStats getUidStatsForTransport(int transport) {
        enforceAnyPermissionOf(NetworkStack.PERMISSION_MAINLINE_NETWORK_STACK);
        PermissionUtils.enforceNetworkStackPermission(mContext);
        try {
            final String[] relevantIfaces =
                    transport == TRANSPORT_WIFI ? mWifiIfaces : mMobileIfaces;