diff options
author | Dianne Hackborn <hackbod@google.com> | 2010-12-15 00:20:27 -0800 |
---|---|---|
committer | Dianne Hackborn <hackbod@google.com> | 2010-12-15 00:20:27 -0800 |
commit | 194157638ae59418b9d9cb4d73f7e285f59bc579 (patch) | |
tree | b4ded4473d567ea1adc789aa0daa162bff6e4032 /core/java/android/app | |
parent | 4f3867e3ce92101224ad79b8f2ff446bb4f99108 (diff) | |
download | frameworks_base-194157638ae59418b9d9cb4d73f7e285f59bc579.zip frameworks_base-194157638ae59418b9d9cb4d73f7e285f59bc579.tar.gz frameworks_base-194157638ae59418b9d9cb4d73f7e285f59bc579.tar.bz2 |
Fix launching of activities that I broke.
Change-Id: I39f4189bad6bdecdc7f9362410f36453fd816121
Diffstat (limited to 'core/java/android/app')
-rw-r--r-- | core/java/android/app/ApplicationPackageManager.java | 13 |
1 files changed, 6 insertions, 7 deletions
diff --git a/core/java/android/app/ApplicationPackageManager.java b/core/java/android/app/ApplicationPackageManager.java index 7589e99..4018703 100644 --- a/core/java/android/app/ApplicationPackageManager.java +++ b/core/java/android/app/ApplicationPackageManager.java @@ -101,24 +101,23 @@ final class ApplicationPackageManager extends PackageManager { Intent intentToResolve = new Intent(Intent.ACTION_MAIN); intentToResolve.addCategory(Intent.CATEGORY_INFO); intentToResolve.setPackage(packageName); - ResolveInfo resolveInfo = resolveActivity(intentToResolve, 0); + List<ResolveInfo> ris = queryIntentActivities(intentToResolve, 0); // Otherwise, try to find a main launcher activity. - if (resolveInfo == null) { + if (ris == null || ris.size() <= 0) { // reuse the intent instance intentToResolve.removeCategory(Intent.CATEGORY_INFO); intentToResolve.addCategory(Intent.CATEGORY_LAUNCHER); intentToResolve.setPackage(packageName); - resolveInfo = resolveActivity(intentToResolve, 0); + ris = queryIntentActivities(intentToResolve, 0); } - if (resolveInfo == null) { + if (ris == null || ris.size() <= 0) { return null; } Intent intent = new Intent(intentToResolve); - // Note: we do NOT fill in the component name; we'll leave the - // Intent unspecified, so if there are multiple matches within the - // package something reasonable will happen. intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); + intent.setClassName(ris.get(0).activityInfo.packageName, + ris.get(0).activityInfo.name); return intent; } |