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

Commit 25e34e41 authored by Joel Galenson's avatar Joel Galenson
Browse files

Add logging to the ongoing usage dialog.

When migrating the ongoing usage dialog from SysUI to
PermissionController, we removed the logging, as it did not work in
Mainline modules at the time.  That has been fixed, so let's add it
back.

Fixes: 123896378
Test: ./out/host/linux-x86/bin/statsd_testdrive -p
com.google.android.permissioncontroller 180.  Trigger all three paths
and see all three messages.

Change-Id: I2bef1576444a7481ac58b9276ad74a251624e321
parent c612d688
Loading
Loading
Loading
Loading
+18 −5
Original line number Diff line number Diff line
@@ -20,6 +20,11 @@ import static android.Manifest.permission_group.CAMERA;
import static android.Manifest.permission_group.LOCATION;
import static android.Manifest.permission_group.MICROPHONE;

import static com.android.packageinstaller.PermissionControllerStatsLog.PRIVACY_INDICATORS_INTERACTED;
import static com.android.packageinstaller.PermissionControllerStatsLog.PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_DISMISS;
import static com.android.packageinstaller.PermissionControllerStatsLog.PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_LINE_ITEM;
import static com.android.packageinstaller.PermissionControllerStatsLog.PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_PRIVACY_SETTINGS;

import android.app.AlertDialog;
import android.content.Context;
import android.content.Intent;
@@ -38,6 +43,7 @@ import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
import androidx.preference.PreferenceFragmentCompat;

import com.android.packageinstaller.PermissionControllerStatsLog;
import com.android.packageinstaller.permission.model.AppPermissionUsage;
import com.android.packageinstaller.permission.model.AppPermissionUsage.GroupUsage;
import com.android.packageinstaller.permission.model.PermissionApps;
@@ -138,10 +144,14 @@ public final class ReviewOngoingUsageFragment extends PreferenceFragmentCompat {
    private void showDialog(@NonNull List<Pair<AppPermissionUsage, List<GroupUsage>>> usages) {
        mDialog = new AlertDialog.Builder(getActivity())
                .setView(createDialogView(usages))
                .setPositiveButton(R.string.ongoing_usage_dialog_ok, null)
                .setNeutralButton(R.string.ongoing_usage_dialog_open_settings, (dialog, which) ->
                .setPositiveButton(R.string.ongoing_usage_dialog_ok, (dialog, which) ->
                        PermissionControllerStatsLog.write(PRIVACY_INDICATORS_INTERACTED,
                                PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_DISMISS, null))
                .setNeutralButton(R.string.ongoing_usage_dialog_open_settings, (dialog, which) -> {
                    PermissionControllerStatsLog.write(PRIVACY_INDICATORS_INTERACTED,
                            PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_PRIVACY_SETTINGS, null);
                    startActivity(new Intent(Settings.ACTION_PRIVACY_SETTINGS).putExtra(
                                Intent.EXTRA_DURATION_MILLIS, TimeUnit.MINUTES.toMillis(1))))
                            Intent.EXTRA_DURATION_MILLIS, TimeUnit.MINUTES.toMillis(1))); })
                .setOnDismissListener((dialog) -> getActivity().finish())
                .create();
        mDialog.show();
@@ -192,10 +202,13 @@ public final class ReviewOngoingUsageFragment extends PreferenceFragmentCompat {
            }

            itemView.setOnClickListener((v) -> {
                String packageName = app.getPackageName();
                PermissionControllerStatsLog.write(PRIVACY_INDICATORS_INTERACTED,
                        PRIVACY_INDICATORS_INTERACTED__TYPE__DIALOG_LINE_ITEM, packageName);
                UserHandle user = UserHandle.getUserHandleForUid(app.getUid());
                Intent intent = new Intent(Intent.ACTION_MANAGE_APP_PERMISSIONS);
                intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK | Intent.FLAG_ACTIVITY_MULTIPLE_TASK);
                intent.putExtra(Intent.EXTRA_PACKAGE_NAME, app.getPackageName());
                intent.putExtra(Intent.EXTRA_PACKAGE_NAME, packageName);
                intent.putExtra(Intent.EXTRA_USER, user);
                context.startActivityAsUser(intent, user);
                mDialog.dismiss();