diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml index d249700671d744b8b02130fbbd9b47090fca96b5..11213d8ea4a4f422cf723acc1bfab5f37e7e9a4e 100644 --- a/res/values/cm_strings.xml +++ b/res/values/cm_strings.xml @@ -209,6 +209,9 @@ /e/ legal + + Sentry User ID + Updates, preferences, release notes diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml index 3dbed98e18331e31169c841e24fd3d82f730b634..784f7a4ae61bae91f8844931e697ebd1aa8f32b4 100644 --- a/res/xml/development_settings.xml +++ b/res/xml/development_settings.xml @@ -646,6 +646,14 @@ android:key="enable_telemetry" android:title="@string/enable_telemetry" android:summary="@string/telemetry_details" /> + + . + */ + +package com.android.settings.deviceinfo.firmwareversion; + +import android.content.Context; +import android.os.UserHandle; +import android.text.TextUtils; +import android.provider.Settings; + +import androidx.preference.Preference; + +import com.android.settings.R; +import com.android.settings.core.BasePreferenceController; +import com.android.settings.slices.Sliceable; + + +public class SentryDetailPreferenceController extends BasePreferenceController { + + private static final String TAG = "SentryDetailPreferenceController"; + + private static final String TELEMETRY_KEY = "e_telemetry"; + + public SentryDetailPreferenceController(Context context, String key) { + super(context, key); + } + + @Override + public int getAvailabilityStatus() { + boolean enable = Settings.System.getInt(mContext.getContentResolver(), TELEMETRY_KEY, 0) == 1; + return enable ? AVAILABLE : UNSUPPORTED_ON_DEVICE; + } + + @Override + public boolean useDynamicSliceSummary() { + return true; + } + + @Override + public boolean isSliceable() { + return true; + } + + @Override + public CharSequence getSummary() { + String sentryId = Settings.Secure.getStringForUser( + mContext.getContentResolver(), Settings.Secure.SENTRY_USERID, + UserHandle.USER_CURRENT); + if (sentryId == null) { + return mContext.getString(R.string.unknown); + } + return sentryId; + } + + @Override + public void copy() { + Sliceable.setCopyContent(mContext, getSummary(), + mContext.getText(R.string.sentry_userid_title)); + } +}