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

Commit a44e416c authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Add excludedPackages parameter to broadcast" into sc-dev

parents 4fea9755 c0ce69bc
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -4282,8 +4282,8 @@ public class ActivityManager {
        try {
            getService().broadcastIntentWithFeature(
                    null, null, intent, null, null, Activity.RESULT_OK, null, null,
                    null /*requiredPermissions*/, null /*excludedPermissions*/, appOp, null, false,
                    true, userId);
                    null /*requiredPermissions*/, null /*excludedPermissions*/,
                    null /*excludedPackages*/, appOp, null, false, true, userId);
        } catch (RemoteException ex) {
        }
    }
+25 −24
Original line number Diff line number Diff line
@@ -1177,7 +1177,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, null, false, false, getUserId());
                    null, AppOpsManager.OP_NONE, null, false, false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1194,7 +1194,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, false, false,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, false, false,
                    getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1210,7 +1210,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, false, false,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, false, false,
                    getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1227,8 +1227,8 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, options, false, false,
                    getUserId());
                    null /*excludedPermissions=*/, null /*excludedPackages*/,
                    AppOpsManager.OP_NONE, options, false, false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1243,7 +1243,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, false, false,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, false, false,
                    user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1252,7 +1252,7 @@ class ContextImpl extends Context {

    @Override
    public void sendBroadcastMultiplePermissions(Intent intent, String[] receiverPermissions,
            String[] excludedPermissions) {
            String[] excludedPermissions, String[] excludedPackages) {
        warnIfCallingFromSystemProcess();
        String resolvedType = intent.resolveTypeIfNeeded(getContentResolver());
        try {
@@ -1260,7 +1260,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions, excludedPermissions,
                    AppOpsManager.OP_NONE, null, false, false, getUserId());
                    excludedPackages, AppOpsManager.OP_NONE, null, false, false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1277,8 +1277,8 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, options, false, false,
                    getUserId());
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, options, false,
                    false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1295,7 +1295,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, appOp, null, false, false, getUserId());
                    null /*excludedPermissions=*/, null, appOp, null, false, false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1312,7 +1312,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, true, false,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, true, false,
                    getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1376,7 +1376,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    rd, initialCode, initialData, initialExtras, receiverPermissions,
                    null /*excludedPermissions=*/, appOp, options, true, false, getUserId());
                    null /*excludedPermissions=*/, null, appOp, options, true, false, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1390,7 +1390,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, null, false, false, user.getIdentifier());
                    null, AppOpsManager.OP_NONE, null, false, false, user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1413,8 +1413,8 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, options, false, false,
                    user.getIdentifier());
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, options, false,
                    false, user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1431,7 +1431,8 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, receiverPermissions,
                    null /*excludedPermissions=*/, appOp, null, false, false, user.getIdentifier());
                    null /*excludedPermissions=*/, null, appOp, null, false, false,
                    user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1482,7 +1483,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    rd, initialCode, initialData, initialExtras, receiverPermissions,
                    null /*excludedPermissions=*/, appOp, options, true, false,
                    null /*excludedPermissions=*/, null, appOp, options, true, false,
                    user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1524,7 +1525,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, null, false, true, getUserId());
                    null, AppOpsManager.OP_NONE, null, false, true, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1563,7 +1564,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, options, false, true, getUserId());
                    null, AppOpsManager.OP_NONE, options, false, true, getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1599,7 +1600,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    rd, initialCode, initialData, initialExtras, null,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, true, true,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, true, true,
                    getUserId());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
@@ -1632,7 +1633,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, null, false, true, user.getIdentifier());
                    null, AppOpsManager.OP_NONE, null, false, true, user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1647,7 +1648,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    null, Activity.RESULT_OK, null, null, null, null /*excludedPermissions=*/,
                    AppOpsManager.OP_NONE, options, false, true, user.getIdentifier());
                    null, AppOpsManager.OP_NONE, options, false, true, user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
        }
@@ -1682,7 +1683,7 @@ class ContextImpl extends Context {
            ActivityManager.getService().broadcastIntentWithFeature(
                    mMainThread.getApplicationThread(), getAttributionTag(), intent, resolvedType,
                    rd, initialCode, initialData, initialExtras, null,
                    null /*excludedPermissions=*/, AppOpsManager.OP_NONE, null, true, true,
                    null /*excludedPermissions=*/, null, AppOpsManager.OP_NONE, null, true, true,
                    user.getIdentifier());
        } catch (RemoteException e) {
            throw e.rethrowFromSystemServer();
+1 −1
Original line number Diff line number Diff line
@@ -138,7 +138,7 @@ interface IActivityManager {
    int broadcastIntentWithFeature(in IApplicationThread caller, in String callingFeatureId,
            in Intent intent, in String resolvedType, in IIntentReceiver resultTo, int resultCode,
            in String resultData, in Bundle map, in String[] requiredPermissions, in String[] excludePermissions,
            int appOp, in Bundle options, boolean serialized, boolean sticky, int userId);
            in String[] excludePackages, int appOp, in Bundle options, boolean serialized, boolean sticky, int userId);
    void unbroadcastIntent(in IApplicationThread caller, in Intent intent, int userId);
    @UnsupportedAppUsage
    oneway void finishReceiver(in IBinder who, int resultCode, in String resultData, in Bundle map,
+13 −0
Original line number Diff line number Diff line
@@ -2212,6 +2212,19 @@ public abstract class Context {
     */
    public void sendBroadcastMultiplePermissions(@NonNull Intent intent,
            @NonNull String[] receiverPermissions, @Nullable String[] excludedPermissions) {
        sendBroadcastMultiplePermissions(intent, receiverPermissions, excludedPermissions, null);
    }


    /**
     * Like {@link #sendBroadcastMultiplePermissions(Intent, String[], String[])}, but also allows
     * specification of a list of excluded packages.
     *
     * @hide
     */
    public void sendBroadcastMultiplePermissions(@NonNull Intent intent,
            @NonNull String[] receiverPermissions, @Nullable String[] excludedPermissions,
            @Nullable String[] excludedPackages) {
        throw new RuntimeException("Not implemented. Must override in a subclass.");
    }

+4 −2
Original line number Diff line number Diff line
@@ -494,8 +494,10 @@ public class ContextWrapper extends Context {
    /** @hide */
    @Override
    public void sendBroadcastMultiplePermissions(@NonNull Intent intent,
            @NonNull String[] receiverPermissions, @Nullable String[] excludedPermissions) {
        mBase.sendBroadcastMultiplePermissions(intent, receiverPermissions, excludedPermissions);
            @NonNull String[] receiverPermissions, @Nullable String[] excludedPermissions,
            @Nullable String[] excludedPackages) {
        mBase.sendBroadcastMultiplePermissions(intent, receiverPermissions, excludedPermissions,
                excludedPackages);
    }

    /** @hide */
Loading