aboutsummaryrefslogtreecommitdiffstats
path: root/cm
diff options
context:
space:
mode:
authorAdnan Begovic <adnan@cyngn.com>2016-03-15 16:40:06 -0700
committerAdnan Begovic <adnan@cyngn.com>2016-03-24 16:50:56 -0700
commit21a567428db79f97d2178a8dec7cf1825b7ecff6 (patch)
tree31108b2cb12675ddf48e99583b14b4bf70bfc419 /cm
parentcdf85adde1be30ce675e8c5442ec4c21a6cd2991 (diff)
downloadvendor_cmsdk-21a567428db79f97d2178a8dec7cf1825b7ecff6.zip
vendor_cmsdk-21a567428db79f97d2178a8dec7cf1825b7ecff6.tar.gz
vendor_cmsdk-21a567428db79f97d2178a8dec7cf1825b7ecff6.tar.bz2
cmsdk: Mandate profile 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-2288 Change-Id: Id0adcc1eaa4a0512faf25f11057c45dc2ac733e0
Diffstat (limited to 'cm')
-rw-r--r--cm/lib/main/java/org/cyanogenmod/platform/internal/ProfileManagerService.java8
1 files changed, 7 insertions, 1 deletions
diff --git a/cm/lib/main/java/org/cyanogenmod/platform/internal/ProfileManagerService.java b/cm/lib/main/java/org/cyanogenmod/platform/internal/ProfileManagerService.java
index 37eb76f..eb39063 100644
--- a/cm/lib/main/java/org/cyanogenmod/platform/internal/ProfileManagerService.java
+++ b/cm/lib/main/java/org/cyanogenmod/platform/internal/ProfileManagerService.java
@@ -169,7 +169,13 @@ public class ProfileManagerService extends SystemService {
super(context);
mContext = context;
mHandler = new Handler(mHandlerCallback);
- publishBinderService(CMContextConstants.CM_PROFILE_SERVICE, mService);
+ if (context.getPackageManager().hasSystemFeature(
+ CMContextConstants.Features.PROFILES)) {
+ publishBinderService(CMContextConstants.CM_PROFILE_SERVICE, mService);
+ } else {
+ Log.wtf(TAG, "CM profile service started by system server but feature xml not" +
+ " declared. Not publishing binder service!");
+ }
}
@Override