summaryrefslogtreecommitdiff
path: root/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java
diff options
context:
space:
mode:
Diffstat (limited to 'libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java')
-rw-r--r--libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java31
1 files changed, 31 insertions, 0 deletions
diff --git a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java
index f9f3eed91..c70a88a41 100644
--- a/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java
+++ b/libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java
@@ -18,6 +18,8 @@ package com.android.wifitrackerlib;
import android.app.admin.DevicePolicyManager;
import android.content.Context;
+import android.net.wifi.WifiManager;
+import android.os.Build;
import android.os.UserManager;
import android.provider.DeviceConfig;
import android.util.ArraySet;
@@ -34,13 +36,17 @@ public class WifiTrackerInjector {
@NonNull private final Context mContext;
private final boolean mIsDemoMode;
+ private final WifiManager mWifiManager;
private final UserManager mUserManager;
private final DevicePolicyManager mDevicePolicyManager;
@NonNull private final Set<String> mNoAttributionAnnotationPackages;
+ private boolean mIsUserDebugVerboseLoggingEnabled;
+ private boolean mVerboseLoggingDisabledOverride = false;
// TODO(b/201571677): Migrate the rest of the common objects to WifiTrackerInjector.
WifiTrackerInjector(@NonNull Context context) {
mContext = context;
+ mWifiManager = context.getSystemService(WifiManager.class);
mIsDemoMode = NonSdkApiWrapper.isDemoMode(context);
mUserManager = context.getSystemService(UserManager.class);
mDevicePolicyManager = context.getSystemService(DevicePolicyManager.class);
@@ -50,6 +56,9 @@ public class WifiTrackerInjector {
for (int i = 0; i < noAttributionAnnotationPackages.length; i++) {
mNoAttributionAnnotationPackages.add(noAttributionAnnotationPackages[i]);
}
+ mIsUserDebugVerboseLoggingEnabled = context.getResources().getBoolean(
+ R.bool.wifitrackerlib_enable_verbose_logging_for_userdebug)
+ && Build.TYPE.equals("userdebug");
}
@NonNull Context getContext() {
@@ -79,4 +88,26 @@ public class WifiTrackerInjector {
return DeviceConfig.getBoolean(DEVICE_CONFIG_NAMESPACE,
"shared_connectivity_enabled", false);
}
+
+ /**
+ * Whether verbose logging is enabled.
+ */
+ public boolean isVerboseLoggingEnabled() {
+ return !mVerboseLoggingDisabledOverride
+ && (mWifiManager.isVerboseLoggingEnabled() || mIsUserDebugVerboseLoggingEnabled);
+ }
+
+ /**
+ * Whether verbose summaries should be shown in WifiEntry.
+ */
+ public boolean isVerboseSummaryEnabled() {
+ return !mVerboseLoggingDisabledOverride && mWifiManager.isVerboseLoggingEnabled();
+ }
+
+ /**
+ * Permanently disables verbose logging.
+ */
+ public void disableVerboseLogging() {
+ mVerboseLoggingDisabledOverride = true;
+ }
}