fix(notifications/action): use radom request code
Fixes the issue with pendingIntents overwriting each other. Probability of equal same request code should be near 0 with 2^32 ints available
This commit is contained in:
parent
4187da9168
commit
d05c90ca7f
|
@ -31,6 +31,7 @@ import org.parceler.Parcels;
|
||||||
|
|
||||||
import java.util.Arrays;
|
import java.util.Arrays;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Random;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
import me.grishka.appkit.api.Callback;
|
import me.grishka.appkit.api.Callback;
|
||||||
|
@ -228,7 +229,7 @@ public class PushNotificationReceiver extends BroadcastReceiver{
|
||||||
notificationIntent.putExtra("notificationAction", action.ordinal());
|
notificationIntent.putExtra("notificationAction", action.ordinal());
|
||||||
notificationIntent.putExtra("notification", Parcels.wrap(notification));
|
notificationIntent.putExtra("notification", Parcels.wrap(notification));
|
||||||
PendingIntent actionPendingIntent =
|
PendingIntent actionPendingIntent =
|
||||||
PendingIntent.getBroadcast(context, 1, notificationIntent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_UPDATE_CURRENT);
|
PendingIntent.getBroadcast(context, new Random().nextInt(), notificationIntent, PendingIntent.FLAG_IMMUTABLE | PendingIntent.FLAG_ONE_SHOT);
|
||||||
|
|
||||||
return new Notification.Action.Builder(null, title, actionPendingIntent).build();
|
return new Notification.Action.Builder(null, title, actionPendingIntent).build();
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue