Merge "Send targeted broadcasts to prevent other apps from receiving them." into rvc-dev

This commit is contained in:
Sudheer Shanka
2021-08-11 02:26:50 +00:00
committed by Android (Google) Code Review

View File

@@ -1362,7 +1362,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
builder.setSmallIcon(R.drawable.stat_notify_error);
final Intent snoozeIntent = buildSnoozeWarningIntent(policy.template);
final Intent snoozeIntent = buildSnoozeWarningIntent(policy.template,
mContext.getPackageName());
builder.setDeleteIntent(PendingIntent.getBroadcast(
mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));
@@ -1448,7 +1449,8 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
builder.setSmallIcon(R.drawable.stat_notify_error);
final Intent snoozeIntent = buildSnoozeRapidIntent(policy.template);
final Intent snoozeIntent = buildSnoozeRapidIntent(policy.template,
mContext.getPackageName());
builder.setDeleteIntent(PendingIntent.getBroadcast(
mContext, 0, snoozeIntent, PendingIntent.FLAG_UPDATE_CURRENT));
@@ -5043,17 +5045,19 @@ public class NetworkPolicyManagerService extends INetworkPolicyManager.Stub {
return new Intent(ACTION_ALLOW_BACKGROUND);
}
private static Intent buildSnoozeWarningIntent(NetworkTemplate template) {
private static Intent buildSnoozeWarningIntent(NetworkTemplate template, String targetPackage) {
final Intent intent = new Intent(ACTION_SNOOZE_WARNING);
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
intent.putExtra(EXTRA_NETWORK_TEMPLATE, template);
intent.setPackage(targetPackage);
return intent;
}
private static Intent buildSnoozeRapidIntent(NetworkTemplate template) {
private static Intent buildSnoozeRapidIntent(NetworkTemplate template, String targetPackage) {
final Intent intent = new Intent(ACTION_SNOOZE_RAPID);
intent.addFlags(Intent.FLAG_RECEIVER_FOREGROUND);
intent.putExtra(EXTRA_NETWORK_TEMPLATE, template);
intent.setPackage(targetPackage);
return intent;
}