Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2d609759 authored by Jason Chiu's avatar Jason Chiu
Browse files

Add preference click metric logs for some special cases

Bug: 137559984
Test: visual, robotest
Change-Id: If8624b49abcd0000487065160ce4a7ba861f234c
parent d889dec4
Loading
Loading
Loading
Loading
+1 −1
Original line number Diff line number Diff line
@@ -34,7 +34,7 @@
        settings:searchable="false"/>

    <Preference
        android:key="configure_settings"
        android:key="configure_wifi_settings"
        android:title="@string/wifi_configure_settings_preference_title"
        settings:allowDividerAbove="true"
        android:fragment="com.android.settings.wifi.ConfigureWifiSettings"/>
+1 −1
Original line number Diff line number Diff line
@@ -32,7 +32,7 @@
        android:layout="@layout/preference_category_no_label"/>

    <Preference
        android:key="configure_settings"
        android:key="configure_wifi_settings"
        android:title="@string/wifi_configure_settings_preference_title"
        settings:allowDividerAbove="true"
        android:fragment="com.android.settings.wifi.ConfigureWifiSettings"/>
+14 −6
Original line number Diff line number Diff line
@@ -23,7 +23,6 @@ import android.content.Context;
import android.icu.text.RelativeDateTimeFormatter;
import android.os.UserHandle;
import android.util.IconDrawableFactory;
import android.util.Log;
import android.view.View;

import androidx.annotation.NonNull;
@@ -37,7 +36,9 @@ import com.android.settings.applications.appinfo.AppInfoDashboardFragment;
import com.android.settings.applications.manageapplications.ManageApplications;
import com.android.settings.core.BasePreferenceController;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.utils.StringUtil;
import com.android.settingslib.widget.AppEntitiesHeaderController;
import com.android.settingslib.widget.AppEntityInfo;
@@ -65,6 +66,7 @@ public class RecentAppsPreferenceController extends BasePreferenceController
    private final ApplicationsState mApplicationsState;
    private final int mUserId;
    private final IconDrawableFactory mIconDrawableFactory;
    private final MetricsFeatureProvider mMetricsFeatureProvider;

    private Fragment mHost;
    private List<UsageStats> mRecentApps;
@@ -75,6 +77,7 @@ public class RecentAppsPreferenceController extends BasePreferenceController
                (Application) mContext.getApplicationContext());
        mUserId = UserHandle.myUserId();
        mIconDrawableFactory = IconDrawableFactory.newInstance(mContext);
        mMetricsFeatureProvider = FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
    }

    public void setFragment(Fragment fragment) {
@@ -96,6 +99,8 @@ public class RecentAppsPreferenceController extends BasePreferenceController
        mAppEntitiesController = AppEntitiesHeaderController.newInstance(mContext, view)
                .setHeaderTitleRes(R.string.recent_app_category_title)
                .setHeaderDetailsClickListener((View v) -> {
                    mMetricsFeatureProvider.logClickedPreference(mRecentAppsPreference,
                            SettingsEnums.SETTINGS_APP_NOTIF_CATEGORY);
                    new SubSettingLauncher(mContext)
                            .setDestination(ManageApplications.class.getName())
                            .setArguments(null /* arguments */)
@@ -161,11 +166,14 @@ public class RecentAppsPreferenceController extends BasePreferenceController
                .setSummary(StringUtil.formatRelativeTime(mContext,
                        System.currentTimeMillis() - stat.getLastTimeUsed(), false,
                        RelativeDateTimeFormatter.Style.SHORT))
                .setOnClickListener(v ->
                .setOnClickListener(v -> {
                    mMetricsFeatureProvider.logClickedPreference(mRecentAppsPreference,
                            SettingsEnums.SETTINGS_APP_NOTIF_CATEGORY);
                    AppInfoBase.startAppInfoFragment(AppInfoDashboardFragment.class,
                            R.string.application_info_label, pkgName, appEntry.info.uid,
                            mHost, 1001 /*RequestCode*/,
                                SettingsEnums.SETTINGS_APP_NOTIF_CATEGORY))
                            SettingsEnums.SETTINGS_APP_NOTIF_CATEGORY);
                })
                .build();
    }
}
+7 −0
Original line number Diff line number Diff line
@@ -46,6 +46,9 @@ import androidx.preference.PreferenceScreen;
import androidx.preference.SwitchPreference;

import com.android.settings.core.BasePreferenceController;
import com.android.settings.dashboard.DashboardFragment;
import com.android.settings.overlay.FeatureFactory;
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
import com.android.settingslib.core.lifecycle.LifecycleObserver;
import com.android.settingslib.core.lifecycle.events.OnStart;
import com.android.settingslib.core.lifecycle.events.OnStop;
@@ -71,6 +74,7 @@ public class DeviceAdminListPreferenceController extends BasePreferenceControlle
    private final UserManager mUm;
    private final PackageManager mPackageManager;
    private final IPackageManager mIPackageManager;
    private final MetricsFeatureProvider mMetricsFeatureProvider;
    /**
     * Internal collection of device admin info objects for all profiles associated with the current
     * user.
@@ -102,6 +106,7 @@ public class DeviceAdminListPreferenceController extends BasePreferenceControlle
        mUm = (UserManager) context.getSystemService(Context.USER_SERVICE);
        mPackageManager = mContext.getPackageManager();
        mIPackageManager = AppGlobals.getPackageManager();
        mMetricsFeatureProvider = FeatureFactory.getFactory(context).getMetricsFeatureProvider();
    }

    @Override
@@ -197,6 +202,8 @@ public class DeviceAdminListPreferenceController extends BasePreferenceControlle
        pref.setSummary(item.getDescription());
        pref.setEnabled(item.isEnabled());
        pref.setOnPreferenceClickListener(preference -> {
            mMetricsFeatureProvider.logClickedPreference(preference,
                    pref.getExtras().getInt(DashboardFragment.CATEGORY));
            final UserHandle user = item.getUser();
            mContext.startActivityAsUser(item.getLaunchIntent(mContext), user);
            return true;
+8 −1
Original line number Diff line number Diff line
@@ -35,6 +35,8 @@ public class AvailableMediaBluetoothDeviceUpdater extends BluetoothDeviceUpdater
    private static final String TAG = "AvailableMediaBluetoothDeviceUpdater";
    private static final boolean DBG = false;

    private static final String PREF_KEY = "available_media_bt";

    private final AudioManager mAudioManager;

    public AvailableMediaBluetoothDeviceUpdater(Context context, DashboardFragment fragment,
@@ -97,9 +99,14 @@ public class AvailableMediaBluetoothDeviceUpdater extends BluetoothDeviceUpdater

    @Override
    public boolean onPreferenceClick(Preference preference) {
        mMetricsFeatureProvider.logClickedPreference(preference, mFragment.getMetricsCategory());
        final CachedBluetoothDevice device = ((BluetoothDevicePreference) preference)
                .getBluetoothDevice();
        return device.setActive();
    }
}

    @Override
    protected String getPreferenceKey() {
        return PREF_KEY;
    }
}
Loading