Loading services/core/java/com/android/server/SystemConfig.java +11 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.server; import android.app.ActivityManager; import android.content.pm.FeatureInfo; import android.os.*; import android.os.Process; Loading Loading @@ -177,6 +178,8 @@ public class SystemConfig { return; } final boolean lowRam = ActivityManager.isLowRamDeviceStatic(); try { XmlPullParser parser = Xml.newPullParser(); parser.setInput(permReader); Loading Loading @@ -276,10 +279,17 @@ public class SystemConfig { } else if ("feature".equals(name)) { String fname = parser.getAttributeValue(null, "name"); boolean allowed; if (!lowRam) { allowed = true; } else { String notLowRam = parser.getAttributeValue(null, "notLowRam"); allowed = !"true".equals(notLowRam); } if (fname == null) { Slog.w(TAG, "<feature> without name at " + parser.getPositionDescription()); } else { } else if (allowed) { //Log.i(TAG, "Got feature " + fname); FeatureInfo fi = new FeatureInfo(); fi.name = fname; Loading services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java +16 −3 Original line number Diff line number Diff line Loading @@ -136,11 +136,14 @@ public class VoiceInteractionManagerService extends SystemService { Settings.Secure.VOICE_INTERACTION_SERVICE, userHandle); ComponentName curRecognizer = getCurRecognizer(userHandle); VoiceInteractionServiceInfo curInteractorInfo = null; if (curInteractorStr == null && curRecognizer != null) { if (curInteractorStr == null && curRecognizer != null && !ActivityManager.isLowRamDeviceStatic()) { // If there is no interactor setting, that means we are upgrading // from an older platform version. If the current recognizer is not // set or matches the preferred recognizer, then we want to upgrade // the user to have the default voice interaction service enabled. // Note that we don't do this for low-RAM devices, since we aren't // supporting voice interaction services there. curInteractorInfo = findAvailInteractor(userHandle, curRecognizer); if (curInteractorInfo != null) { // Looks good! We'll apply this one. To make it happen, we clear the Loading @@ -150,6 +153,15 @@ public class VoiceInteractionManagerService extends SystemService { } } // If we are on a svelte device, make sure an interactor is not currently // enabled; if it is, turn it off. if (ActivityManager.isLowRamDeviceStatic() && curInteractorStr != null) { if (!TextUtils.isEmpty(curInteractorStr)) { setCurInteractor(null, userHandle); curInteractorStr = ""; } } if (curRecognizer != null) { // If we already have at least a recognizer, then we probably want to // leave things as they are... unless something has disappeared. Loading @@ -171,10 +183,11 @@ public class VoiceInteractionManagerService extends SystemService { } } // Initializing settings, look for an interactor first. if (curInteractorInfo == null) { // Initializing settings, look for an interactor first (but only on non-svelte). if (curInteractorInfo == null && !ActivityManager.isLowRamDeviceStatic()) { curInteractorInfo = findAvailInteractor(userHandle, null); } if (curInteractorInfo != null) { // Eventually it will be an error to not specify this. setCurInteractor(new ComponentName(curInteractorInfo.getServiceInfo().packageName, Loading Loading
services/core/java/com/android/server/SystemConfig.java +11 −1 Original line number Diff line number Diff line Loading @@ -16,6 +16,7 @@ package com.android.server; import android.app.ActivityManager; import android.content.pm.FeatureInfo; import android.os.*; import android.os.Process; Loading Loading @@ -177,6 +178,8 @@ public class SystemConfig { return; } final boolean lowRam = ActivityManager.isLowRamDeviceStatic(); try { XmlPullParser parser = Xml.newPullParser(); parser.setInput(permReader); Loading Loading @@ -276,10 +279,17 @@ public class SystemConfig { } else if ("feature".equals(name)) { String fname = parser.getAttributeValue(null, "name"); boolean allowed; if (!lowRam) { allowed = true; } else { String notLowRam = parser.getAttributeValue(null, "notLowRam"); allowed = !"true".equals(notLowRam); } if (fname == null) { Slog.w(TAG, "<feature> without name at " + parser.getPositionDescription()); } else { } else if (allowed) { //Log.i(TAG, "Got feature " + fname); FeatureInfo fi = new FeatureInfo(); fi.name = fname; Loading
services/voiceinteraction/java/com/android/server/voiceinteraction/VoiceInteractionManagerService.java +16 −3 Original line number Diff line number Diff line Loading @@ -136,11 +136,14 @@ public class VoiceInteractionManagerService extends SystemService { Settings.Secure.VOICE_INTERACTION_SERVICE, userHandle); ComponentName curRecognizer = getCurRecognizer(userHandle); VoiceInteractionServiceInfo curInteractorInfo = null; if (curInteractorStr == null && curRecognizer != null) { if (curInteractorStr == null && curRecognizer != null && !ActivityManager.isLowRamDeviceStatic()) { // If there is no interactor setting, that means we are upgrading // from an older platform version. If the current recognizer is not // set or matches the preferred recognizer, then we want to upgrade // the user to have the default voice interaction service enabled. // Note that we don't do this for low-RAM devices, since we aren't // supporting voice interaction services there. curInteractorInfo = findAvailInteractor(userHandle, curRecognizer); if (curInteractorInfo != null) { // Looks good! We'll apply this one. To make it happen, we clear the Loading @@ -150,6 +153,15 @@ public class VoiceInteractionManagerService extends SystemService { } } // If we are on a svelte device, make sure an interactor is not currently // enabled; if it is, turn it off. if (ActivityManager.isLowRamDeviceStatic() && curInteractorStr != null) { if (!TextUtils.isEmpty(curInteractorStr)) { setCurInteractor(null, userHandle); curInteractorStr = ""; } } if (curRecognizer != null) { // If we already have at least a recognizer, then we probably want to // leave things as they are... unless something has disappeared. Loading @@ -171,10 +183,11 @@ public class VoiceInteractionManagerService extends SystemService { } } // Initializing settings, look for an interactor first. if (curInteractorInfo == null) { // Initializing settings, look for an interactor first (but only on non-svelte). if (curInteractorInfo == null && !ActivityManager.isLowRamDeviceStatic()) { curInteractorInfo = findAvailInteractor(userHandle, null); } if (curInteractorInfo != null) { // Eventually it will be an error to not specify this. setCurInteractor(new ComponentName(curInteractorInfo.getServiceInfo().packageName, Loading