summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
authorFabian Kozynski <kozynski@google.com>2022-04-12 13:16:54 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2022-04-12 13:16:54 +0000
commit4ae15e81bc2fa8a9b7d05fcaf72935b35a26e8dd (patch)
treefacee5e4dac04f0aee204b9664d752d005a32f96 /core/java/android
parent331f163d20d1a7245edddfbdafa4c51c8bc17235 (diff)
parent0549cf1251869cbfca200e12f8e1aa5deee4facb (diff)
Merge "Don't crash TileService app when systemui crashes" into tm-dev
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/service/quicksettings/TileService.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/core/java/android/service/quicksettings/TileService.java b/core/java/android/service/quicksettings/TileService.java
index 0829d2813c83..85502197ea7e 100644
--- a/core/java/android/service/quicksettings/TileService.java
+++ b/core/java/android/service/quicksettings/TileService.java
@@ -353,7 +353,13 @@ public class TileService extends Service {
try {
mTile = mService.getTile(mTileToken);
} catch (RemoteException e) {
- throw new RuntimeException("Unable to reach IQSService", e);
+ String name = TileService.this.getClass().getSimpleName();
+ Log.w(TAG, name + " - Couldn't get tile from IQSService.", e);
+ // If we couldn't receive the tile, there's not much reason to continue as users won't
+ // be able to interact. Returning `null` will trigger an unbind in SystemUI and
+ // eventually we'll rebind when needed. This usually means that SystemUI crashed
+ // right after binding and therefore `mService` is outdated.
+ return null;
}
if (mTile != null) {
mTile.setService(mService, mTileToken);