[automerge] Grant URI permissions to the CallStyle-related ones 2p: 4dee5aab12

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/22616881

Change-Id: Ia9659ef4fcc0bf021530e79d93131126fb6e4468
This commit is contained in:
Matías Hernández
2023-04-13 16:03:03 +00:00
committed by Presubmit Automerger Backend
2 changed files with 31 additions and 0 deletions

View File

@@ -2837,6 +2837,14 @@ public class Notification implements Parcelable
}
}
if (isStyle(CallStyle.class) & extras != null) {
Person callPerson = extras.getParcelable(EXTRA_CALL_PERSON);
if (callPerson != null) {
visitor.accept(callPerson.getIconUri());
}
visitIconUri(visitor, extras.getParcelable(EXTRA_VERIFICATION_ICON));
}
if (mBubbleMetadata != null) {
visitIconUri(visitor, mBubbleMetadata.getIcon());
}

View File

@@ -4445,6 +4445,29 @@ public class NotificationManagerServiceTest extends UiServiceTestCase {
verify(visitor, times(1)).accept(eq(backgroundImage));
}
@Test
public void testVisitUris_callStyle() {
Icon personIcon = Icon.createWithContentUri("content://media/person");
Icon verificationIcon = Icon.createWithContentUri("content://media/verification");
Person callingPerson = new Person.Builder().setName("Someone")
.setIcon(personIcon)
.build();
PendingIntent hangUpIntent = PendingIntent.getActivity(mContext, 0, new Intent(),
PendingIntent.FLAG_IMMUTABLE);
Notification n = new Notification.Builder(mContext, "a")
.setStyle(Notification.CallStyle.forOngoingCall(callingPerson, hangUpIntent)
.setVerificationIcon(verificationIcon))
.setContentTitle("Calling...")
.setSmallIcon(android.R.drawable.sym_def_app_icon)
.build();
Consumer<Uri> visitor = (Consumer<Uri>) spy(Consumer.class);
n.visitUris(visitor);
verify(visitor, times(1)).accept(eq(personIcon.getUri()));
verify(visitor, times(1)).accept(eq(verificationIcon.getUri()));
}
@Test
public void testVisitUris_audioContentsString() throws Exception {
final Uri audioContents = Uri.parse("content://com.example/audio");