summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJeff Sharkey <jsharkey@android.com>2012-10-10 16:20:46 -0700
committerJeff Sharkey <jsharkey@android.com>2012-10-10 16:20:46 -0700
commit0e092f4eb010976349e3fd1e49e41e14b1a33aaa (patch)
tree83b2f7ac7f55198dfdd29799a8c213434d8cd662 /src
parente656031ff8c48dffafe965b5859c5c82a5f23fe7 (diff)
downloadpackages_apps_settings-0e092f4eb010976349e3fd1e49e41e14b1a33aaa.zip
packages_apps_settings-0e092f4eb010976349e3fd1e49e41e14b1a33aaa.tar.gz
packages_apps_settings-0e092f4eb010976349e3fd1e49e41e14b1a33aaa.tar.bz2
Switch to IPackageManager.getServiceInfo().
Bug: 7095093 Change-Id: I79b9f077c9d69c5629b7dd0071a11ccda50839cd
Diffstat (limited to 'src')
-rw-r--r--src/com/android/settings/applications/RunningState.java30
1 files changed, 11 insertions, 19 deletions
diff --git a/src/com/android/settings/applications/RunningState.java b/src/com/android/settings/applications/RunningState.java
index 9f92b0a..5797dfa 100644
--- a/src/com/android/settings/applications/RunningState.java
+++ b/src/com/android/settings/applications/RunningState.java
@@ -21,6 +21,7 @@ import com.android.settings.users.UserUtils;
import android.app.ActivityManager;
import android.app.ActivityManagerNative;
+import android.app.ActivityThread;
import android.content.ComponentName;
import android.content.Context;
import android.content.pm.ApplicationInfo;
@@ -29,7 +30,6 @@ import android.content.pm.PackageItemInfo;
import android.content.pm.PackageManager;
import android.content.pm.ServiceInfo;
import android.content.pm.UserInfo;
-import android.content.pm.PackageManager.NameNotFoundException;
import android.content.res.Resources;
import android.graphics.drawable.Drawable;
import android.os.Handler;
@@ -449,8 +449,8 @@ public class RunningState {
}
}
- boolean updateService(Context userContext, ActivityManager.RunningServiceInfo service) {
- final PackageManager pm = userContext.getPackageManager();
+ boolean updateService(Context context, ActivityManager.RunningServiceInfo service) {
+ final PackageManager pm = context.getPackageManager();
boolean changed = false;
ServiceItem si = mServices.get(service.service);
@@ -459,9 +459,10 @@ public class RunningState {
si = new ServiceItem(mUserId);
si.mRunningService = service;
try {
- si.mServiceInfo = pm.getServiceInfo(service.service,
- PackageManager.GET_UNINSTALLED_PACKAGES);
- } catch (PackageManager.NameNotFoundException e) {
+ si.mServiceInfo = ActivityThread.getPackageManager().getServiceInfo(
+ service.service, PackageManager.GET_UNINSTALLED_PACKAGES,
+ UserHandle.getUserId(service.uid));
+ } catch (RemoteException e) {
}
si.mDisplayLabel = makeLabel(pm,
si.mRunningService.service.getClassName(), si.mServiceInfo);
@@ -484,7 +485,7 @@ public class RunningState {
try {
Resources clientr = pm.getResourcesForApplication(service.clientPackage);
String label = clientr.getString(service.clientLabel);
- si.mDescription = userContext.getResources().getString(
+ si.mDescription = context.getResources().getString(
R.string.service_client_name, label);
} catch (PackageManager.NameNotFoundException e) {
si.mDescription = null;
@@ -494,7 +495,7 @@ public class RunningState {
si.mShownAsStarted = true;
changed = true;
}
- si.mDescription = userContext.getResources().getString(
+ si.mDescription = context.getResources().getString(
R.string.service_started_by_app);
}
@@ -903,15 +904,6 @@ public class RunningState {
for (int i=0; i<NS; i++) {
ActivityManager.RunningServiceInfo si = services.get(i);
- final Context userContext;
- try {
- userContext = context.createPackageContextAsUser(
- "android", 0, new UserHandle(UserHandle.getUserId(si.uid)));
- } catch (NameNotFoundException e) {
- // Should always have "android" package
- throw new RuntimeException(e);
- }
-
// If this service's process is in use at a higher importance
// due to another process bound to one of its services, then we
// won't put it in the top-level list of services. Instead we
@@ -953,7 +945,7 @@ public class RunningState {
ProcessItem proc = procs.get(si.process);
if (proc == null) {
changed = true;
- proc = new ProcessItem(userContext, si.uid, si.process);
+ proc = new ProcessItem(context, si.uid, si.process);
procs.put(si.process, proc);
}
@@ -974,7 +966,7 @@ public class RunningState {
proc.mDependentProcesses.clear();
proc.mCurSeq = mSequence;
}
- changed |= proc.updateService(userContext, si);
+ changed |= proc.updateService(context, si);
}
// Now update the map of other processes that are running (but