Log instead of throw exception when pkg not found

Throwing an exception for the package being missing in app hibernation
service crashes the system, so we replace it with a log to keep builds
with hibernation stable.

Bug: 188059563
Test: builds
Change-Id: I9cf461ab01369ff790f3fa196c3f8e5e1a33b0e3
This commit is contained in:
Kevin Han
2021-05-13 16:44:24 -07:00
parent b5ddeefc09
commit d3dcf5106e

View File

@@ -220,9 +220,9 @@ public final class AppHibernationService extends SystemService {
final Map<String, UserLevelState> packageStates = mUserStates.get(userId);
final UserLevelState pkgState = packageStates.get(packageName);
if (pkgState == null) {
throw new IllegalArgumentException(
String.format("Package %s is not installed for user %s",
packageName, userId));
Slog.e(TAG, String.format("Package %s is not installed for user %s",
packageName, userId));
return false;
}
return pkgState.hibernated;
}
@@ -275,9 +275,9 @@ public final class AppHibernationService extends SystemService {
final Map<String, UserLevelState> packageStates = mUserStates.get(userId);
final UserLevelState pkgState = packageStates.get(packageName);
if (pkgState == null) {
throw new IllegalArgumentException(
String.format("Package %s is not installed for user %s",
packageName, userId));
Slog.e(TAG, String.format("Package %s is not installed for user %s",
packageName, userId));
return;
}
if (pkgState.hibernated == isHibernating) {
@@ -320,8 +320,8 @@ public final class AppHibernationService extends SystemService {
synchronized (mLock) {
GlobalLevelState state = mGlobalHibernationStates.get(packageName);
if (state == null) {
throw new IllegalArgumentException(
String.format("Package %s is not installed for any user", packageName));
Slog.e(TAG, String.format("Package %s is not installed for any user", packageName));
return;
}
if (state.hibernated != isHibernating) {
if (isHibernating) {