Loading services/core/java/com/android/server/net/NetworkManagementService.java +7 −16 Original line number Diff line number Diff line Loading @@ -74,7 +74,6 @@ import com.android.internal.app.IBatteryStats; import com.android.internal.util.DumpUtils; import com.android.internal.util.HexDump; import com.android.modules.utils.build.SdkLevel; import com.android.net.flags.Flags; import com.android.net.module.util.NetdUtils; import com.android.net.module.util.PermissionUtils; import com.android.server.FgThread; Loading Loading @@ -1060,25 +1059,17 @@ public class NetworkManagementService extends INetworkManagementService.Stub { Log.w(TAG, "setDataSaverMode(): already " + mDataSaverMode); return true; } Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "setDataSaverModeEnabled"); Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "bandwidthEnableDataSaver"); try { if (Flags.setDataSaverViaCm()) { // setDataSaverEnabled throws if it fails to set data saver. mContext.getSystemService(ConnectivityManager.class) .setDataSaverEnabled(enable); mDataSaverMode = enable; return true; } else { final boolean changed = mNetdService.bandwidthEnableDataSaver(enable); if (changed) { mDataSaverMode = enable; } else { Log.e(TAG, "setDataSaverMode(" + enable + "): failed to set iptables"); Log.w(TAG, "setDataSaverMode(" + enable + "): netd command silently failed"); } return changed; } } catch (RemoteException | IllegalStateException e) { Log.e(TAG, "setDataSaverMode(" + enable + "): failed with exception", e); } catch (RemoteException e) { Log.w(TAG, "setDataSaverMode(" + enable + "): netd command failed", e); return false; } finally { Trace.traceEnd(Trace.TRACE_TAG_NETWORK); Loading services/tests/servicestests/src/com/android/server/net/NetworkManagementServiceTest.java +2 −11 Original line number Diff line number Diff line Loading @@ -57,7 +57,6 @@ import android.util.ArrayMap; import androidx.test.runner.AndroidJUnit4; import com.android.internal.app.IBatteryStats; import com.android.net.flags.Flags; import org.junit.After; import org.junit.Before; Loading Loading @@ -264,11 +263,7 @@ public class NetworkManagementServiceTest { verify(mCm).addUidToMeteredNetworkDenyList(TEST_UID); mNMService.setDataSaverModeEnabled(true); if (Flags.setDataSaverViaCm()) { verify(mCm).setDataSaverEnabled(true); } else { verify(mNetdService).bandwidthEnableDataSaver(true); } mNMService.setUidOnMeteredNetworkDenylist(TEST_UID, false); assertTrue("Should be true since data saver is on and the uid is not allowlisted", Loading @@ -284,11 +279,7 @@ public class NetworkManagementServiceTest { mNMService.setUidOnMeteredNetworkAllowlist(TEST_UID, false); verify(mCm).removeUidFromMeteredNetworkAllowList(TEST_UID); mNMService.setDataSaverModeEnabled(false); if (Flags.setDataSaverViaCm()) { verify(mCm).setDataSaverEnabled(false); } else { verify(mNetdService).bandwidthEnableDataSaver(false); } assertFalse("Network should not be restricted when data saver is off", mNMService.isNetworkRestricted(TEST_UID)); } Loading Loading
services/core/java/com/android/server/net/NetworkManagementService.java +7 −16 Original line number Diff line number Diff line Loading @@ -74,7 +74,6 @@ import com.android.internal.app.IBatteryStats; import com.android.internal.util.DumpUtils; import com.android.internal.util.HexDump; import com.android.modules.utils.build.SdkLevel; import com.android.net.flags.Flags; import com.android.net.module.util.NetdUtils; import com.android.net.module.util.PermissionUtils; import com.android.server.FgThread; Loading Loading @@ -1060,25 +1059,17 @@ public class NetworkManagementService extends INetworkManagementService.Stub { Log.w(TAG, "setDataSaverMode(): already " + mDataSaverMode); return true; } Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "setDataSaverModeEnabled"); Trace.traceBegin(Trace.TRACE_TAG_NETWORK, "bandwidthEnableDataSaver"); try { if (Flags.setDataSaverViaCm()) { // setDataSaverEnabled throws if it fails to set data saver. mContext.getSystemService(ConnectivityManager.class) .setDataSaverEnabled(enable); mDataSaverMode = enable; return true; } else { final boolean changed = mNetdService.bandwidthEnableDataSaver(enable); if (changed) { mDataSaverMode = enable; } else { Log.e(TAG, "setDataSaverMode(" + enable + "): failed to set iptables"); Log.w(TAG, "setDataSaverMode(" + enable + "): netd command silently failed"); } return changed; } } catch (RemoteException | IllegalStateException e) { Log.e(TAG, "setDataSaverMode(" + enable + "): failed with exception", e); } catch (RemoteException e) { Log.w(TAG, "setDataSaverMode(" + enable + "): netd command failed", e); return false; } finally { Trace.traceEnd(Trace.TRACE_TAG_NETWORK); Loading
services/tests/servicestests/src/com/android/server/net/NetworkManagementServiceTest.java +2 −11 Original line number Diff line number Diff line Loading @@ -57,7 +57,6 @@ import android.util.ArrayMap; import androidx.test.runner.AndroidJUnit4; import com.android.internal.app.IBatteryStats; import com.android.net.flags.Flags; import org.junit.After; import org.junit.Before; Loading Loading @@ -264,11 +263,7 @@ public class NetworkManagementServiceTest { verify(mCm).addUidToMeteredNetworkDenyList(TEST_UID); mNMService.setDataSaverModeEnabled(true); if (Flags.setDataSaverViaCm()) { verify(mCm).setDataSaverEnabled(true); } else { verify(mNetdService).bandwidthEnableDataSaver(true); } mNMService.setUidOnMeteredNetworkDenylist(TEST_UID, false); assertTrue("Should be true since data saver is on and the uid is not allowlisted", Loading @@ -284,11 +279,7 @@ public class NetworkManagementServiceTest { mNMService.setUidOnMeteredNetworkAllowlist(TEST_UID, false); verify(mCm).removeUidFromMeteredNetworkAllowList(TEST_UID); mNMService.setDataSaverModeEnabled(false); if (Flags.setDataSaverViaCm()) { verify(mCm).setDataSaverEnabled(false); } else { verify(mNetdService).bandwidthEnableDataSaver(false); } assertFalse("Network should not be restricted when data saver is off", mNMService.isNetworkRestricted(TEST_UID)); } Loading