From ec2c6adf08305338cf05ca12ecde734f026372e2 Mon Sep 17 00:00:00 2001 From: Grace Cheng Date: Thu, 17 Feb 2022 13:11:28 +0000 Subject: Adds adas setting in dumpsys. Bug: 219835125 Test: adb shell dumpsys location Change-Id: I472c416e1cc5f404b1aeb73b82dd484cecb95ed4 (cherry picked from commit caa9e5c867540fbcba5f3ac2500d14f196c41459) --- .../server/location/LocationManagerService.java | 1 + .../server/location/settings/LocationSettings.java | 31 ++++++++++++++++++++++ 2 files changed, 32 insertions(+) diff --git a/services/core/java/com/android/server/location/LocationManagerService.java b/services/core/java/com/android/server/location/LocationManagerService.java index 0c3f9f0e26c6..45d9822205ec 100644 --- a/services/core/java/com/android/server/location/LocationManagerService.java +++ b/services/core/java/com/android/server/location/LocationManagerService.java @@ -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) { diff --git a/services/core/java/com/android/server/location/settings/LocationSettings.java b/services/core/java/com/android/server/location/settings/LocationSettings.java index d52153893970..be0e7acd2401 100644 --- a/services/core/java/com/android/server/location/settings/LocationSettings.java +++ b/services/core/java/com/android/server/location/settings/LocationSettings.java @@ -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) { -- cgit v1.2.3-59-g8ed1b