Record all contextual card log to MetricsFeatureProvider
Use ContextualCardLogUtils to serialize contextual card event to string, and records the string using regular MetricFeatureProvider logging APIs. Bug: 124701288 Test: Robolectric, integrating test with SettingsIntelligence Change-Id: Ie139b4f4b8a2b0f0dcc4bb8df9bdec8f5fd824a6
This commit is contained in:
@@ -16,6 +16,7 @@
|
||||
|
||||
package com.android.settings.homepage.contextualcards.slices;
|
||||
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.Context;
|
||||
import android.view.View;
|
||||
import android.widget.LinearLayout;
|
||||
@@ -26,8 +27,9 @@ import androidx.slice.widget.SliceView;
|
||||
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.homepage.contextualcards.ContextualCard;
|
||||
import com.android.settings.homepage.contextualcards.ContextualCardFeatureProvider;
|
||||
import com.android.settings.homepage.contextualcards.logging.ContextualCardLogUtils;
|
||||
import com.android.settings.overlay.FeatureFactory;
|
||||
import com.android.settingslib.core.instrumentation.MetricsFeatureProvider;
|
||||
|
||||
/**
|
||||
* Card renderer helper for {@link ContextualCard} built as slice full card.
|
||||
@@ -54,11 +56,14 @@ class SliceFullCardRendererHelper {
|
||||
// Set this listener so we can log the interaction users make on the slice
|
||||
cardHolder.sliceView.setOnSliceActionListener(
|
||||
(eventInfo, sliceItem) -> {
|
||||
final ContextualCardFeatureProvider contextualCardFeatureProvider =
|
||||
FeatureFactory.getFactory(mContext).getContextualCardFeatureProvider(
|
||||
mContext);
|
||||
contextualCardFeatureProvider.logContextualCardClick(card, eventInfo.rowIndex,
|
||||
final String log = ContextualCardLogUtils.buildCardClickLog(card, eventInfo.rowIndex,
|
||||
eventInfo.actionType, cardHolder.getAdapterPosition());
|
||||
|
||||
final MetricsFeatureProvider metricsFeatureProvider =
|
||||
FeatureFactory.getFactory(mContext).getMetricsFeatureProvider();
|
||||
|
||||
metricsFeatureProvider.action(mContext,
|
||||
SettingsEnums.ACTION_CONTEXTUAL_CARD_CLICK, log);
|
||||
});
|
||||
|
||||
// Customize slice view for Settings
|
||||
|
Reference in New Issue
Block a user