2013-07-17 147 views
1

每当我尝试运行我的应用程序时,它会在模拟器/设备中安装两个应用程序。我只想安装我的主要活动,但也安装了Splash Activity。我知道问题出现在Manifest中。任何人都可以帮助我吗?这是我的代码:我的应用程序安装两个应用程序 - Android

<activity 
     android:name="com.android.upcurrents.launcher.SplashActivity" 
     android:label="@string/app_name" > 
     <intent-filter> 
      <action android:name="android.intent.action.MAIN" /> 

      <category android:name="android.intent.category.LAUNCHER" /> 
     </intent-filter> 
    </activity> 
    <activity 
    android:name="com.android.upcurrents.MainActivity" 
    android:label="@string/app_name" /> 

回答

0

您只需要将一项活动声明为启动程序。因此,从SplashActivity的标签中删除意图过滤器,并将其添加到MainActivity中。启动程序意图过滤器应仅存在于清单文件中的一个活动中。

+0

它没有”吨工作:( – jajaja

0

它基于您提供的意图过滤器进行安装。
从SplashActivity删除以下意图过滤,然后把它放在主要活动

<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 

     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
+0

我试图做到这一点。它没有工作。 :( – jajaja

0

试试这个:

<activity 
    android:name="com.android.upcurrents.launcher.SplashActivity" 
    android:label="@string/app_name" > 
</activity> 

<activity 
android:name="com.android.upcurrents.MainActivity" 
android:label="@string/app_name" > 
<intent-filter> 
     <action android:name="android.intent.action.MAIN" /> 
     <category android:name="android.intent.category.LAUNCHER" /> 
    </intent-filter> 
</activity> 
+0

它没有工作。:( – jajaja

+0

你可以提供整个清单代码? –

0

我有同样的问题,但我与确保你固定它只有一个活动与:

<intent-filter> 
    <action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

在我的代码我有两个活动与该意图过滤器,这导致两个应用程序安装在我的设备。

0

我们有相同的问题,但我固定它这样 我的代码之前,下面的清单

<application 
     android:debuggable="true" 
     android:allowBackup="true"> 
     <activity  android:name=".SplashActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.noupdate.apptest_noupdate.MainActivity" 
      android:icon="@drawable/ic_launcher" 
      android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

注意,在意向里面SplashActivity是这样的代码

<intent-filter> 
<action android:name="android.intent.action.MAIN" /> 
    <category android:name="android.intent.category.LAUNCHER" /> 
</intent-filter> 

我只删除该类别

<category android:name="android.intent.category.LAUNCHER" /> 

所以在我删除int在飞溅它没有安装两个应用程序图标,但只有一个主ENT过滤器类的代码会是这样的通知,意图过滤器类别已删除

<application 
     android:debuggable="true" 
     android:allowBackup="true"> 
     <activity  android:name=".SplashActivity"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 

      </intent-filter> 
     </activity> 
     <activity 
      android:name="com.noupdate.apptest_noupdate.MainActivity" 
      android:icon="@drawable/ic_launcher" 
      android:theme="@android:style/Theme.NoTitleBar" 
      android:label="@string/app_name"> 
      <intent-filter> 
       <action android:name="android.intent.action.MAIN" /> 
       <category android:name="android.intent.category.LAUNCHER" /> 
      </intent-filter> 
     </activity> 
    </application> 

它确实有助于