Add metrics for suggestions
Bug: 27851236 Change-Id: Ia5aa1d42a40ba09a19db3c3790f0a7342660e613
This commit is contained in:
@@ -225,6 +225,8 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
||||
holder.itemView.setOnClickListener(new View.OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
MetricsLogger.action(mContext, MetricsEvent.ACTION_SETTINGS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(mContext, suggestion));
|
||||
((SettingsActivity) mContext).startSuggestion(suggestion.intent);
|
||||
}
|
||||
});
|
||||
@@ -259,6 +261,8 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
||||
new MenuItem.OnMenuItemClickListener() {
|
||||
@Override
|
||||
public boolean onMenuItemClick(MenuItem item) {
|
||||
MetricsLogger.action(mContext, MetricsEvent.ACTION_SETTINGS_DISMISS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(mContext, suggestion));
|
||||
disableSuggestion(suggestion);
|
||||
mSuggestions.remove(suggestion);
|
||||
recountItems();
|
||||
@@ -378,6 +382,16 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
||||
return null;
|
||||
}
|
||||
|
||||
public static String getSuggestionIdentifier(Context context, Tile suggestion) {
|
||||
String packageName = suggestion.intent.getComponent().getPackageName();
|
||||
if (packageName.equals(context.getPackageName())) {
|
||||
// Since Settings provides several suggestions, fill in the class instead of the
|
||||
// package for these.
|
||||
packageName = suggestion.intent.getComponent().getClassName();
|
||||
}
|
||||
return packageName;
|
||||
}
|
||||
|
||||
public static class DashboardItemHolder extends RecyclerView.ViewHolder {
|
||||
public final ImageView icon;
|
||||
public final TextView title;
|
||||
|
@@ -39,6 +39,7 @@ import com.android.settings.dashboard.conditional.FocusRecyclerView;
|
||||
import com.android.settingslib.SuggestionParser;
|
||||
import com.android.settingslib.drawer.DashboardCategory;
|
||||
import com.android.settingslib.drawer.SettingsDrawerActivity;
|
||||
import com.android.settingslib.drawer.Tile;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@@ -114,6 +115,10 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
for (Condition c : mConditionManager.getVisibleConditions()) {
|
||||
MetricsLogger.visible(getContext(), c.getMetricsConstant());
|
||||
}
|
||||
for (Tile suggestion : mSuggestionParser.getSuggestions()) {
|
||||
MetricsLogger.action(getContext(), MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -125,6 +130,10 @@ public class DashboardSummary extends InstrumentedFragment
|
||||
for (Condition c : mConditionManager.getVisibleConditions()) {
|
||||
MetricsLogger.hidden(getContext(), c.getMetricsConstant());
|
||||
}
|
||||
for (Tile suggestion : mSuggestionParser.getSuggestions()) {
|
||||
MetricsLogger.action(getContext(), MetricsEvent.ACTION_HIDE_SETTINGS_SUGGESTION,
|
||||
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||
}
|
||||
}
|
||||
|
||||
@Override
|
||||
|
Reference in New Issue
Block a user