Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/182.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android 动态指定第一个活动_Android - Fatal编程技术网

Android 动态指定第一个活动

Android 动态指定第一个活动,android,Android,主活动在AndroidManifest.xml中指定为: <intent-filter> <action android:name="android.intent.action.MAIN" /> <category android:name="android.intent.category.LAUNCHER" /> </intent-filter> 但是我不知道如

主活动在AndroidManifest.xml中指定为:

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


但是我不知道如何根据代码逻辑动态指定第一个活动。

指定一个默认活动,其中包含启动onCreate方法中所需活动的逻辑

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // CODE HERE TO CREATE INTENT
    startActivity(intent);
    finish();
}

我没有要点来添加注释,但是在某些情况下,从后堆栈中删除启动器活动可能会很有用。这篇文章解释了如何做到这一点:

是正确的-但我认为可以通过从后台移除发射活动来改进his。这是什么

我对这个相关问题有一个完整的答案,基本上显示了问题的两面,即活动代码和清单代码:

活动代码基本上与@Ian的相同,因此我不会重新发布。但我会在他的回答中加入我的补充


清单声明(注意
noHistory=“true”
参数):



    <activity
        android:name=".activity.EntryActivity"
        android:launchMode="singleInstance"
        android:noHistory="true" >
        <intent-filter>
            <action android:name="android.intent.action.MAIN" />
            <category android:name="android.intent.category.LAUNCHER" />
        </intent-filter>
    </activity>