Use shell permission to query current user

Use shell permissions to obtain CREATE_USERS to call
ActivityManager.getCurrentUser in ConnectivityServiceTest.

This is necessary to allow the tests to run in coverage tests without
the platform certificate.

Bug: 187935317
Test: atest FrameworksNetTests:ConnectivityServiceTest
Change-Id: I5a56ffab4820d351dcdb132046698cd0d3b8bdb1
This commit is contained in:
Remi NGUYEN VAN
2021-06-09 13:45:24 +09:00
parent f900c45afa
commit 95bc8d7067
2 changed files with 17 additions and 1 deletions

View File

@@ -1247,6 +1247,13 @@ public class ConnectivityService extends IConnectivityManager.Stub
public boolean getCellular464XlatEnabled() {
return NetworkProperties.isCellular464XlatEnabled().orElse(true);
}
/**
* Create a {@link LocationPermissionChecker}.
*/
public LocationPermissionChecker makeLocationPermissionChecker(Context context) {
return new LocationPermissionChecker(context);
}
}
public ConnectivityService(Context context) {
@@ -1314,7 +1321,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
mNetd = netd;
mTelephonyManager = (TelephonyManager) mContext.getSystemService(Context.TELEPHONY_SERVICE);
mAppOpsManager = (AppOpsManager) mContext.getSystemService(Context.APP_OPS_SERVICE);
mLocationPermissionChecker = new LocationPermissionChecker(mContext);
mLocationPermissionChecker = mDeps.makeLocationPermissionChecker(mContext);
// To ensure uid state is synchronized with Network Policy, register for
// NetworkPolicyManagerService events must happen prior to NetworkPolicyManagerService