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

Commit a9ec7caa authored by Daniel Chapin's avatar Daniel Chapin Committed by Android Build Coastguard Worker
Browse files

Revert "Update new permission logic to use flagging."

Revert submission 25024821-b296056771-3

Reason for revert: Droidfood blocking bug: b/305648037

Reverted changes: /q/submissionid:25024821-b296056771-3
(cherry picked from https://googleplex-android-review.googlesource.com/q/commit:3cee7edf33438b74601e955244dffa3140984e64)
Merged-In: I55f78b2ff3bd7283f59dc2344a4052baf1c0b1dd
Change-Id: I55f78b2ff3bd7283f59dc2344a4052baf1c0b1dd
parent a00dfe56
Loading
Loading
Loading
Loading
+1 −1
Original line number Original line Diff line number Diff line
@@ -314,7 +314,7 @@ package android {
    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
    field public static final String REMOVE_DRM_CERTIFICATES = "android.permission.REMOVE_DRM_CERTIFICATES";
    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
    field public static final String REMOVE_TASKS = "android.permission.REMOVE_TASKS";
    field public static final String RENOUNCE_PERMISSIONS = "android.permission.RENOUNCE_PERMISSIONS";
    field public static final String RENOUNCE_PERMISSIONS = "android.permission.RENOUNCE_PERMISSIONS";
    field @FlaggedApi("backstage_power.report_usage_stats_permission") public static final String REPORT_USAGE_STATS = "android.permission.REPORT_USAGE_STATS";
    field public static final String REPORT_USAGE_STATS = "android.permission.REPORT_USAGE_STATS";
    field @Deprecated public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES";
    field @Deprecated public static final String REQUEST_NETWORK_SCORES = "android.permission.REQUEST_NETWORK_SCORES";
    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
    field public static final String REQUEST_NOTIFICATION_ASSISTANT_SERVICE = "android.permission.REQUEST_NOTIFICATION_ASSISTANT_SERVICE";
    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
    field public static final String RESET_PASSWORD = "android.permission.RESET_PASSWORD";
+0 −6
Original line number Original line Diff line number Diff line
@@ -7,9 +7,3 @@ flag {
    bug: "296061232"
    bug: "296061232"
}
}
flag {
    name: "report_usage_stats_permission"
    namespace: "backstage_power"
    description: "Feature flag for the new REPORT_USAGE_STATS permission."
    bug: "296056771"
}
+1 −3
Original line number Original line Diff line number Diff line
@@ -6122,9 +6122,7 @@
        android:protectionLevel="signature|privileged|development|appop|retailDemo" />
        android:protectionLevel="signature|privileged|development|appop|retailDemo" />
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />
    <uses-permission android:name="android.permission.PACKAGE_USAGE_STATS" />


    <!-- @SystemApi @hide
    <!-- @SystemApi @hide Allows trusted system components to report events to UsageStatsManager -->
         @FlaggedApi("backstage_power.report_usage_stats_permission")
         Allows trusted system components to report events to UsageStatsManager -->
    <permission android:name="android.permission.REPORT_USAGE_STATS"
    <permission android:name="android.permission.REPORT_USAGE_STATS"
                android:protectionLevel="signature|module" />
                android:protectionLevel="signature|module" />


+6 −10
Original line number Original line Diff line number Diff line
@@ -53,7 +53,6 @@ import android.app.usage.AppStandbyInfo;
import android.app.usage.BroadcastResponseStatsList;
import android.app.usage.BroadcastResponseStatsList;
import android.app.usage.ConfigurationStats;
import android.app.usage.ConfigurationStats;
import android.app.usage.EventStats;
import android.app.usage.EventStats;
import android.app.usage.Flags;
import android.app.usage.IUsageStatsManager;
import android.app.usage.IUsageStatsManager;
import android.app.usage.UsageEvents;
import android.app.usage.UsageEvents;
import android.app.usage.UsageEvents.Event;
import android.app.usage.UsageEvents.Event;
@@ -2127,14 +2126,11 @@ public class UsageStatsService extends SystemService implements
        }
        }


        private boolean canReportUsageStats() {
        private boolean canReportUsageStats() {
            final boolean isSystem = isCallingUidSystem();
            if (isCallingUidSystem()) {
            if (!Flags.reportUsageStatsPermission()) {
                return true; // System UID can always report UsageStats
                // If the flag is disabled, do no check for the new permission and instead return
            }
                // true only if the calling uid is system since System UID can always report stats.

                return isSystem;
            return getContext().checkCallingPermission(Manifest.permission.REPORT_USAGE_STATS)
            }
            return isSystem
                    || getContext().checkCallingPermission(Manifest.permission.REPORT_USAGE_STATS)
                    == PackageManager.PERMISSION_GRANTED;
                    == PackageManager.PERMISSION_GRANTED;
        }
        }