Move DeviceConfig check to Service
Moves DC feature flag evalutation to service since clients do not have permisssion. Test: gts Bug: 275754582 Change-Id: Ic56cae1ad52d9df2daab6c82da0e57087a91408c
This commit is contained in:
@@ -460,9 +460,17 @@ public final class CredentialManager {
|
||||
return false;
|
||||
}
|
||||
|
||||
/**
|
||||
* Returns whether the service is enabled.
|
||||
*
|
||||
* @hide
|
||||
*/
|
||||
private boolean isServiceEnabled() {
|
||||
return DeviceConfig.getBoolean(
|
||||
DeviceConfig.NAMESPACE_CREDENTIAL, DEVICE_CONFIG_ENABLE_CREDENTIAL_MANAGER, true);
|
||||
try {
|
||||
return mService.isServiceEnabled();
|
||||
} catch (RemoteException e) {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
|
||||
@@ -58,5 +58,7 @@ interface ICredentialManager {
|
||||
List<CredentialProviderInfo> getCredentialProviderServices(in int userId, in int providerFilter);
|
||||
|
||||
List<CredentialProviderInfo> getCredentialProviderServicesForTesting(in int providerFilter);
|
||||
|
||||
boolean isServiceEnabled();
|
||||
}
|
||||
|
||||
|
||||
@@ -825,6 +825,19 @@ public final class CredentialManagerService
|
||||
mContext, userId, providerFilter, getEnabledProviders());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean isServiceEnabled() {
|
||||
final long origId = Binder.clearCallingIdentity();
|
||||
try {
|
||||
return DeviceConfig.getBoolean(
|
||||
DeviceConfig.NAMESPACE_CREDENTIAL,
|
||||
CredentialManager.DEVICE_CONFIG_ENABLE_CREDENTIAL_MANAGER,
|
||||
false);
|
||||
} finally {
|
||||
Binder.restoreCallingIdentity(origId);
|
||||
}
|
||||
}
|
||||
|
||||
@SuppressWarnings("GuardedBy") // ErrorProne requires service.mLock which is the same
|
||||
// this.mLock
|
||||
private Set<ComponentName> getEnabledProviders() {
|
||||
|
||||
Reference in New Issue
Block a user