Add visibility metrics to dialogs.

Bug: 30681529
Test: adb logcat -b events | egrep "(sysui_|notification_)"
Change-Id: I199d2e1b2cb8588a562b46bb8128d8ece24952f0
This commit is contained in:
Fan Zhang
2016-09-16 12:45:07 -07:00
parent 9560b36306
commit 1e516287bd
30 changed files with 311 additions and 59 deletions

View File

@@ -37,9 +37,11 @@ import android.os.UserHandle;
import android.os.UserManager;
import android.util.Log;
import com.android.internal.logging.MetricsProto;
import com.android.settings.SettingsActivity;
import com.android.settings.SettingsPreferenceFragment;
import com.android.settings.Utils;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.applications.ApplicationsState;
import com.android.settingslib.applications.ApplicationsState.AppEntry;
@@ -229,11 +231,18 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
new UserHandle(UserHandle.getUserId(uid)));
}
public static class MyAlertDialogFragment extends DialogFragment {
public static class MyAlertDialogFragment extends InstrumentedDialogFragment {
private static final String ARG_ID = "id";
@Override
public int getMetricsCategory() {
return MetricsProto.MetricsEvent.DIALOG_APP_INFO_ACTION;
}
@Override
public Dialog onCreateDialog(Bundle savedInstanceState) {
int id = getArguments().getInt("id");
int id = getArguments().getInt(ARG_ID);
int errorCode = getArguments().getInt("moveError");
Dialog dialog = ((AppInfoBase) getTargetFragment()).createDialog(id, errorCode);
if (dialog == null) {
@@ -245,7 +254,7 @@ public abstract class AppInfoBase extends SettingsPreferenceFragment
public static MyAlertDialogFragment newInstance(int id, int errorCode) {
MyAlertDialogFragment dialogFragment = new MyAlertDialogFragment();
Bundle args = new Bundle();
args.putInt("id", id);
args.putInt(ARG_ID, id);
args.putInt("moveError", errorCode);
dialogFragment.setArguments(args);
return dialogFragment;

View File

@@ -36,6 +36,7 @@ import com.android.internal.logging.MetricsProto.MetricsEvent;
import com.android.settings.core.InstrumentedFragment;
import com.android.settings.R;
import com.android.settings.Utils;
import com.android.settings.core.instrumentation.InstrumentedDialogFragment;
import java.io.File;
import java.io.FileInputStream;
@@ -554,15 +555,15 @@ public class RunningServiceDetails extends InstrumentedFragment
}
return null;
}
private void showConfirmStopDialog(ComponentName comp) {
DialogFragment newFragment = MyAlertDialogFragment.newConfirmStop(
DIALOG_CONFIRM_STOP, comp);
newFragment.setTargetFragment(this, 0);
newFragment.show(getFragmentManager(), "confirmstop");
}
public static class MyAlertDialogFragment extends DialogFragment {
public static class MyAlertDialogFragment extends InstrumentedDialogFragment {
public static MyAlertDialogFragment newConfirmStop(int id, ComponentName comp) {
MyAlertDialogFragment frag = new MyAlertDialogFragment();
@@ -605,6 +606,11 @@ public class RunningServiceDetails extends InstrumentedFragment
}
throw new IllegalArgumentException("unknown id " + id);
}
@Override
public int getMetricsCategory() {
return MetricsEvent.DIALOG_RUNNIGN_SERVICE;
}
}
void ensureData() {