Merge "Do not hold AppOpsService lock while calling DeviceConfig" into sc-dev
This commit is contained in:
committed by
Android (Google) Code Review
commit
c4c14c9f9f
@@ -179,17 +179,20 @@ final class DiscreteRegistry {
|
||||
}
|
||||
|
||||
void systemReady() {
|
||||
synchronized (mOnDiskLock) {
|
||||
mDiscreteAccessDir = new File(new File(Environment.getDataSystemDirectory(), "appops"),
|
||||
"discrete");
|
||||
createDiscreteAccessDirLocked();
|
||||
mDiscreteOps = new DiscreteOps();
|
||||
}
|
||||
DeviceConfig.addOnPropertiesChangedListener(DeviceConfig.NAMESPACE_PRIVACY,
|
||||
AsyncTask.THREAD_POOL_EXECUTOR, (DeviceConfig.Properties p) -> {
|
||||
setDiscreteHistoryParameters(p);
|
||||
});
|
||||
setDiscreteHistoryParameters(DeviceConfig.getProperties(DeviceConfig.NAMESPACE_PRIVACY));
|
||||
synchronized (mOnDiskLock) {
|
||||
synchronized (mInMemoryLock) {
|
||||
mDiscreteAccessDir = new File(
|
||||
new File(Environment.getDataSystemDirectory(), "appops"),
|
||||
"discrete");
|
||||
createDiscreteAccessDirLocked();
|
||||
mDiscreteOps = new DiscreteOps();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private void setDiscreteHistoryParameters(DeviceConfig.Properties p) {
|
||||
|
||||
@@ -246,10 +246,10 @@ final class HistoricalRegistry {
|
||||
+ " by which to push history on next write");
|
||||
}
|
||||
}
|
||||
mDiscreteRegistry.systemReady();
|
||||
}
|
||||
}
|
||||
}
|
||||
mDiscreteRegistry.systemReady();
|
||||
}
|
||||
|
||||
private boolean isPersistenceInitializedMLocked() {
|
||||
|
||||
Reference in New Issue
Block a user