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() {
|
holder.itemView.setOnClickListener(new View.OnClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
|
MetricsLogger.action(mContext, MetricsEvent.ACTION_SETTINGS_SUGGESTION,
|
||||||
|
DashboardAdapter.getSuggestionIdentifier(mContext, suggestion));
|
||||||
((SettingsActivity) mContext).startSuggestion(suggestion.intent);
|
((SettingsActivity) mContext).startSuggestion(suggestion.intent);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
@@ -259,6 +261,8 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
|||||||
new MenuItem.OnMenuItemClickListener() {
|
new MenuItem.OnMenuItemClickListener() {
|
||||||
@Override
|
@Override
|
||||||
public boolean onMenuItemClick(MenuItem item) {
|
public boolean onMenuItemClick(MenuItem item) {
|
||||||
|
MetricsLogger.action(mContext, MetricsEvent.ACTION_SETTINGS_DISMISS_SUGGESTION,
|
||||||
|
DashboardAdapter.getSuggestionIdentifier(mContext, suggestion));
|
||||||
disableSuggestion(suggestion);
|
disableSuggestion(suggestion);
|
||||||
mSuggestions.remove(suggestion);
|
mSuggestions.remove(suggestion);
|
||||||
recountItems();
|
recountItems();
|
||||||
@@ -378,6 +382,16 @@ public class DashboardAdapter extends RecyclerView.Adapter<DashboardAdapter.Dash
|
|||||||
return null;
|
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 static class DashboardItemHolder extends RecyclerView.ViewHolder {
|
||||||
public final ImageView icon;
|
public final ImageView icon;
|
||||||
public final TextView title;
|
public final TextView title;
|
||||||
|
@@ -39,6 +39,7 @@ import com.android.settings.dashboard.conditional.FocusRecyclerView;
|
|||||||
import com.android.settingslib.SuggestionParser;
|
import com.android.settingslib.SuggestionParser;
|
||||||
import com.android.settingslib.drawer.DashboardCategory;
|
import com.android.settingslib.drawer.DashboardCategory;
|
||||||
import com.android.settingslib.drawer.SettingsDrawerActivity;
|
import com.android.settingslib.drawer.SettingsDrawerActivity;
|
||||||
|
import com.android.settingslib.drawer.Tile;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -114,6 +115,10 @@ public class DashboardSummary extends InstrumentedFragment
|
|||||||
for (Condition c : mConditionManager.getVisibleConditions()) {
|
for (Condition c : mConditionManager.getVisibleConditions()) {
|
||||||
MetricsLogger.visible(getContext(), c.getMetricsConstant());
|
MetricsLogger.visible(getContext(), c.getMetricsConstant());
|
||||||
}
|
}
|
||||||
|
for (Tile suggestion : mSuggestionParser.getSuggestions()) {
|
||||||
|
MetricsLogger.action(getContext(), MetricsEvent.ACTION_SHOW_SETTINGS_SUGGESTION,
|
||||||
|
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -125,6 +130,10 @@ public class DashboardSummary extends InstrumentedFragment
|
|||||||
for (Condition c : mConditionManager.getVisibleConditions()) {
|
for (Condition c : mConditionManager.getVisibleConditions()) {
|
||||||
MetricsLogger.hidden(getContext(), c.getMetricsConstant());
|
MetricsLogger.hidden(getContext(), c.getMetricsConstant());
|
||||||
}
|
}
|
||||||
|
for (Tile suggestion : mSuggestionParser.getSuggestions()) {
|
||||||
|
MetricsLogger.action(getContext(), MetricsEvent.ACTION_HIDE_SETTINGS_SUGGESTION,
|
||||||
|
DashboardAdapter.getSuggestionIdentifier(getContext(), suggestion));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
Reference in New Issue
Block a user