New API for comparing two intents of PendingIntent object.
Bug: 174237997 Test: atest PendingIntentTest Change-Id: Ic5eb20f94ff6fd6953315a5f848effa25b813da7
This commit is contained in:
@@ -35,6 +35,7 @@ package android.app {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public final class PendingIntent implements android.os.Parcelable {
|
public final class PendingIntent implements android.os.Parcelable {
|
||||||
|
method @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public boolean intentFilterEquals(@Nullable android.app.PendingIntent);
|
||||||
method @NonNull @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
|
method @NonNull @RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT) public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -302,6 +302,7 @@ package android.app {
|
|||||||
}
|
}
|
||||||
|
|
||||||
public final class PendingIntent implements android.os.Parcelable {
|
public final class PendingIntent implements android.os.Parcelable {
|
||||||
|
method @RequiresPermission("android.permission.GET_INTENT_SENDER_INTENT") public boolean intentFilterEquals(@Nullable android.app.PendingIntent);
|
||||||
method @NonNull @RequiresPermission("android.permission.GET_INTENT_SENDER_INTENT") public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
|
method @NonNull @RequiresPermission("android.permission.GET_INTENT_SENDER_INTENT") public java.util.List<android.content.pm.ResolveInfo> queryIntentComponents(int);
|
||||||
field @Deprecated public static final int FLAG_MUTABLE_UNAUDITED = 33554432; // 0x2000000
|
field @Deprecated public static final int FLAG_MUTABLE_UNAUDITED = 33554432; // 0x2000000
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1256,6 +1256,30 @@ public final class PendingIntent implements Parcelable {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Comparison operator on two PendingIntent objects, such that true is returned when they
|
||||||
|
* represent {@link Intent}s that are equal as per {@link Intent#filterEquals}.
|
||||||
|
*
|
||||||
|
* @param other The other PendingIntent to compare against.
|
||||||
|
* @return True if action, data, type, class, and categories on two intents are the same.
|
||||||
|
*
|
||||||
|
* @hide
|
||||||
|
*/
|
||||||
|
@SystemApi(client = SystemApi.Client.MODULE_LIBRARIES)
|
||||||
|
@TestApi
|
||||||
|
@RequiresPermission(android.Manifest.permission.GET_INTENT_SENDER_INTENT)
|
||||||
|
public boolean intentFilterEquals(@Nullable PendingIntent other) {
|
||||||
|
if (other == null) {
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
return ActivityManager.getService().getIntentForIntentSender(other.mTarget)
|
||||||
|
.filterEquals(getIntent());
|
||||||
|
} catch (RemoteException e) {
|
||||||
|
throw e.rethrowFromSystemServer();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Comparison operator on two PendingIntent objects, such that true
|
* Comparison operator on two PendingIntent objects, such that true
|
||||||
* is returned then they both represent the same operation from the
|
* is returned then they both represent the same operation from the
|
||||||
|
|||||||
Reference in New Issue
Block a user