Adds adas setting in dumpsys.

Bug: 219835125
Test: adb shell dumpsys location

Change-Id: I472c416e1cc5f404b1aeb73b82dd484cecb95ed4
This commit is contained in:
Grace Cheng
2022-02-17 13:11:28 +00:00
parent 6f14f3cd5b
commit caa9e5c867
2 changed files with 32 additions and 0 deletions

View File

@@ -1428,6 +1428,7 @@ public class LocationManagerService extends ILocationManager.Stub implements
ipw.println("Location Settings:");
ipw.increaseIndent();
mInjector.getSettingsHelper().dump(fd, ipw, args);
mInjector.getLocationSettings().dump(fd, ipw, args);
ipw.decreaseIndent();
synchronized (mLock) {

View File

@@ -18,8 +18,11 @@ package com.android.server.location.settings;
import static android.content.pm.PackageManager.FEATURE_AUTOMOTIVE;
import android.app.ActivityManager;
import android.content.Context;
import android.os.Environment;
import android.os.RemoteException;
import android.util.IndentingPrintWriter;
import android.util.SparseArray;
import com.android.internal.annotations.GuardedBy;
@@ -29,6 +32,7 @@ import com.android.server.FgThread;
import java.io.DataInput;
import java.io.DataOutput;
import java.io.File;
import java.io.FileDescriptor;
import java.io.IOException;
import java.util.concurrent.CopyOnWriteArrayList;
import java.util.function.Function;
@@ -104,6 +108,33 @@ public class LocationSettings {
getUserSettingsStore(userId).update(updater);
}
/** Dumps info for debugging. */
public final void dump(FileDescriptor fd, IndentingPrintWriter ipw, String[] args) {
int[] userIds;
try {
userIds = ActivityManager.getService().getRunningUserIds();
} catch (RemoteException e) {
throw e.rethrowFromSystemServer();
}
if (mContext.getPackageManager().hasSystemFeature(FEATURE_AUTOMOTIVE)) {
ipw.print("ADAS Location Setting: ");
ipw.increaseIndent();
if (userIds.length > 1) {
ipw.println();
for (int userId : userIds) {
ipw.print("[u");
ipw.print(userId);
ipw.print("] ");
ipw.println(getUserSettings(userId).isAdasGnssLocationEnabled());
}
} else {
ipw.println(getUserSettings(userIds[0]).isAdasGnssLocationEnabled());
}
ipw.decreaseIndent();
}
}
@VisibleForTesting
final void flushFiles() throws InterruptedException {
synchronized (mUserSettings) {