For future references: you are setting the IMMUTABLE flag on the intent; it should be set on the pending intent. It really is that simple, and there is no underlying bug here, just a small logic error.