summaryrefslogtreecommitdiffstats
path: root/core/java/android/app/ApplicationPackageManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android/app/ApplicationPackageManager.java')
-rw-r--r--core/java/android/app/ApplicationPackageManager.java13
1 files changed, 8 insertions, 5 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java
index b93771f..0d11e29 100644
--- a/core/java/android/app/ApplicationPackageManager.java
+++ b/core/java/android/app/ApplicationPackageManager.java
@@ -427,14 +427,17 @@ final class ApplicationPackageManager extends PackageManager {
}
}
- @SuppressWarnings("unchecked")
@Override
public List<PackageInfo> getInstalledThemePackages() {
- try {
- return mPM.getInstalledThemePackages();
- } catch (RemoteException e) {
- throw new RuntimeException("Package manager has died", e);
+ // Returns a list of theme APKs.
+ ArrayList<PackageInfo> finalList = new ArrayList<PackageInfo>();
+ List<PackageInfo> installedPackagesList = getInstalledPackages(0);
+ for (PackageInfo pi : installedPackagesList) {
+ if (pi != null && pi.isThemeApk) {
+ finalList.add(pi);
+ }
}
+ return finalList;
}
@SuppressWarnings("unchecked")