SplashActivity
然后加载ActAtomicGodDetailDesc
ActAtomicGodDetailDesc
正在显示
而不是SplashActivity
每次我希望应用在主屏幕上点击应用图标时触发SplashActivity
<application
android:allowBackup="true"
android:icon="@drawable/ic_launcher"
android:label="@string/app_name"
android:theme="@style/AppTheme" >
<activity
android:name=".SplashActivity"
android:label="@string/app_name"
android:noHistory="true"
android:screenOrientation="portrait" >
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
<activity
android:name=".ActAtomicGodDetailDesc"
android:label="@string/app_name"
android:screenOrientation="portrait" >
</activity>
</application>
答案 0 :(得分:4)
每次我希望应用程序在主屏幕上点击应用程序图标时触发SplashActivity
我认为您需要在Splash Activity上设置android:clearTaskOnLaunch="true"
,这样每当您点击应用图标时,它就会以root用户身份启动。
android:clearTaskOnLaunch http://developer.android.com/guide/topics/manifest/activity-element.html#clear
除了根活动之外,无论何时从主屏幕重新启动所有活动都将从任务中删除 - &#34; true&#34;如果任务总是被剥离到它的根活动,并且&#34; false&#34;如果不。默认值为&#34; false&#34;。此属性仅对启动新任务的活动(根活动)有意义;它被任务中的所有其他活动忽略了。 当值为&#34; true&#34;时,每次用户再次启动任务时,无论他们最后在任务中执行什么操作,无论他们是使用“后退”还是“主页”按钮,都会将其置于根活动状态。别管它。当值为&#34; false&#34;时,可以在某些情况下清除任务中的活动(请参阅alwaysRetainTaskState属性),但并非总是如此。
例如,假设有人从主屏幕启动活动P,然后从那里进入活动Q.用户接下来按Home,然后返回活动P.通常,用户会看到活动Q,因为那样这是他们在P的任务中最后做的事情。但是,如果P将此标志设置为&#34; true&#34;,当用户按下Home并且任务进入后台时,其上的所有活动(在本例中为Q)都被删除。因此用户在返回任务时只看到P.
如果此属性和allowTaskReparenting都是&#34; true&#34;,那么任何可以重新替换父级的活动都会移动到他们共享亲密关系的任务中;如上所述,然后删除剩余的活动。
<activity
android:name=".SplashActivity"
android:label="@string/app_name"
android:screenOrientation="portrait"
android:clearTaskOnLaunch="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>