OSDN Git Service

AI 146848: am: CL 146847 am: CL 146845 Fix detecting "home" activities when parsing...
authorXavier Ducrohet <>
Sun, 19 Apr 2009 06:32:15 +0000 (23:32 -0700)
committerThe Android Open Source Project <initial-contribution@android.com>
Sun, 19 Apr 2009 06:32:15 +0000 (23:32 -0700)
  Original author: xav
  Merged from: //branches/cupcake/...
  Original author: android-build

Automated import of CL 146848

eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/launch/MainLaunchConfigTab.java
eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/common/project/AndroidManifestParser.java

index a32c2ee..f2a30de 100644 (file)
@@ -414,7 +414,7 @@ public class MainLaunchConfigTab extends AbstractLaunchConfigurationTab {
                     mActivityCombo.removeAll();
                     
                     for (Activity activity : activities) {
-                        if (activity.getExported() && activity.hasAction()) {
+                        if (activity.isExported() && activity.hasAction()) {
                             mActivities.add(activity);
                             mActivityCombo.add(activity.getName());
                         }
index 69982fc..3b5c823 100644 (file)
@@ -110,22 +110,22 @@ public class AndroidManifestParser {
      */
     public static class Activity {
         private final String mName;
-        private final boolean mExported;
+        private final boolean mIsExported;
         private boolean mHasAction = false;
         private boolean mHasMainAction = false;
         private boolean mHasLauncherCategory = false;
         
         public Activity(String name, boolean exported) {
             mName = name;
-            mExported = exported;
+            mIsExported = exported;
         }
         
         public String getName() {
             return mName;
         }
         
-        public boolean getExported() {
-            return mExported;
+        public boolean isExported() {
+            return mIsExported;
         }
         
         public boolean hasAction() {
@@ -430,7 +430,10 @@ public class AndroidManifestParser {
                         case LEVEL_INTENT_FILTER:
                             // if we found both a main action and a launcher category, this is our
                             // launcher activity!
-                            if (mCurrentActivity != null && mCurrentActivity.isHomeActivity()) {
+                            if (mLauncherActivity == null &&
+                                    mCurrentActivity != null &&
+                                    mCurrentActivity.isHomeActivity() &&
+                                    mCurrentActivity.isExported()) {
                                 mLauncherActivity = mCurrentActivity;
                             }
                             break;