From 1e586e08bfcac5c5edafd9ec31e76930449bbee7 Mon Sep 17 00:00:00 2001 From: Andres Morales Date: Mon, 21 Jul 2014 12:16:32 -0700 Subject: [PATCH] Don't register PDBService if not available on device Bug: 16455896 Change-Id: If576ce8e837ba498f10848795706efb29e76974a --- core/java/android/app/ContextImpl.java | 13 ++++++++++--- 1 file changed, 10 insertions(+), 3 deletions(-) diff --git a/core/java/android/app/ContextImpl.java b/core/java/android/app/ContextImpl.java index 8e3323b8769ee..4d6bd4b208456 100644 --- a/core/java/android/app/ContextImpl.java +++ b/core/java/android/app/ContextImpl.java @@ -762,9 +762,16 @@ class ContextImpl extends Context { registerService(PERSISTENT_DATA_BLOCK_SERVICE, new ServiceFetcher() { public Object createService(ContextImpl ctx) { IBinder b = ServiceManager.getService(PERSISTENT_DATA_BLOCK_SERVICE); - return new PersistentDataBlockManager( - IPersistentDataBlockService.Stub.asInterface(b)); - }}); + IPersistentDataBlockService persistentDataBlockService = + IPersistentDataBlockService.Stub.asInterface(b); + if (persistentDataBlockService != null) { + return new PersistentDataBlockManager(persistentDataBlockService); + } else { + // not supported + return null; + } + } + }); registerService(MEDIA_PROJECTION_SERVICE, new ServiceFetcher() { public Object createService(ContextImpl ctx) {