diff --git a/res/values/cm_strings.xml b/res/values/cm_strings.xml index 4c20366f24614f2b69b8ff25d070b8b83917865f..dcea0796cb202f93da75e2ea05cc71949d6dabc1 100644 --- a/res/values/cm_strings.xml +++ b/res/values/cm_strings.xml @@ -218,6 +218,9 @@ Fast charging Disable to reduce the heat produced by the device while charging or to extend the lifespan of the battery + + Sentry User ID + Enable /e/OS Telemetry Enable automatic bug reporting diff --git a/res/xml/development_settings.xml b/res/xml/development_settings.xml index 3a5f0206cef3fe13fdbf9d84ff6708f3378218b6..ca9e130b60ed660026b835171f03cc27ebd2a1f6 100644 --- a/res/xml/development_settings.xml +++ b/res/xml/development_settings.xml @@ -623,6 +623,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)); + } +}