launcher3: Handle case where install session could be invalid.

If the install session comes back as invalid, we can fail to add
a promise icon which leads to icons not showing up on the workspace.

Bug: 419426642
Test: None yet
Flag: EXEMPT Bug fix
Change-Id: I592948eb2b60c2249bb5b141d499d1d5ea01aebc
This commit is contained in:
Adnan Begovic
2025-06-02 10:15:33 -07:00
parent 6dcc0a10f3
commit 0e8be78021
2 changed files with 7 additions and 1 deletions
@@ -65,6 +65,11 @@ public class SessionCommitReceiver extends BroadcastReceiver {
return;
}
if (info.getSessionId() == -1) {
FileLog.d(LOG, "Session id for " + info.getAppPackageName() + " is -1");
return;
}
InstallSessionHelper packageInstallerCompat = InstallSessionHelper.INSTANCE.get(context);
boolean alreadyAddedPromiseIcon =
packageInstallerCompat.promiseIconAddedForId(info.getSessionId());
@@ -195,7 +195,8 @@ public class InstallSessionHelper {
@WorkerThread
public boolean promiseIconAddedForId(final int sessionId) {
return getPromiseIconIds().contains(sessionId);
// Make sure the session id is valid.
return sessionId != -1 && getPromiseIconIds().contains(sessionId);
}
@WorkerThread