diff options
Diffstat (limited to 'libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java')
-rw-r--r-- | libs/WifiTrackerLib/src/com/android/wifitrackerlib/WifiTrackerInjector.java | 31 |
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; + } } |