aboutsummaryrefslogtreecommitdiffstats
path: root/cm
diff options
context:
space:
mode:
authorAdnan Begovic <adnan@cyngn.com>2016-03-15 11:29:41 -0700
committerAdnan Begovic <adnan@cyngn.com>2016-03-24 16:50:40 -0700
commitcdf85adde1be30ce675e8c5442ec4c21a6cd2991 (patch)
tree3798ff21ac283d56d9a06d65c7ae1077199c18af /cm
parent1bf0cf2ff858e5a46657a2906399f1372b7d30df (diff)
downloadvendor_cmsdk-cdf85adde1be30ce675e8c5442ec4c21a6cd2991.zip
vendor_cmsdk-cdf85adde1be30ce675e8c5442ec4c21a6cd2991.tar.gz
vendor_cmsdk-cdf85adde1be30ce675e8c5442ec4c21a6cd2991.tar.bz2
cmsdk: Mandate cm sb feature xml's for service implementation.
The feature xml plays two roles: 1) To allow sdk interface (constructor) to throw when system service is unavailable. This allows for clearer platform development debugging. 2) To allow for simpler disambiguation of what services to instrument in a modular environment. TICKET: CYNGNOS-2289 Change-Id: Ice0ae7c45aecbb34e0ea667128b040906c46d7e7
Diffstat (limited to 'cm')
-rw-r--r--cm/lib/main/java/org/cyanogenmod/platform/internal/CMStatusBarManagerService.java6
1 files changed, 6 insertions, 0 deletions
diff --git a/cm/lib/main/java/org/cyanogenmod/platform/internal/CMStatusBarManagerService.java b/cm/lib/main/java/org/cyanogenmod/platform/internal/CMStatusBarManagerService.java
index ee913ed..5905836 100644
--- a/cm/lib/main/java/org/cyanogenmod/platform/internal/CMStatusBarManagerService.java
+++ b/cm/lib/main/java/org/cyanogenmod/platform/internal/CMStatusBarManagerService.java
@@ -83,6 +83,12 @@ public class CMStatusBarManagerService extends SystemService {
@Override
public void onStart() {
+ if (!mContext.getPackageManager().hasSystemFeature(
+ CMContextConstants.Features.STATUSBAR)) {
+ Log.wtf(TAG, "CM statusbar service started by system server but feature xml not" +
+ " declared. Not publishing binder service!");
+ return;
+ }
Log.d(TAG, "registerCMStatusBar cmstatusbar: " + this);
mCustomTileListeners = new CustomTileListeners();
publishBinderService(CMContextConstants.CM_STATUS_BAR_SERVICE, mService);