Android App 防止启动多次实现教程

一、流程步骤

journey
    title 教会小白如何实现 Android App 防止启动多次
    section 整体流程
        开发者=>小白: 介绍整体流程
        小白=>小白: 创建 SingleInstance 模式的 Activity
        小白=>小白: 添加逻辑判断,控制只有一个实例存在
    section 教学示范
        开发者=>小白: 示例代码演示

二、具体步骤及代码示例

1. 创建 SingleInstance 模式的 Activity

在 AndroidManifest.xml 文件中,将指定的 Activity 设置为 SingleInstance 模式,这样可以保证每次启动该 Activity 都会创建一个新的任务栈。

<activity
    android:name=".YourActivity"
    android:launchMode="singleInstance"/>

2. 添加逻辑判断,控制只有一个实例存在

在 Activity 的onCreate()方法中进行判断,如果已经有一个实例存在,则直接关闭当前实例。

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    if (!isTaskRoot() && getIntent().hasCategory(Intent.CATEGORY_LAUNCHER) && getIntent().getAction() != null && getIntent().getAction().equals(Intent.ACTION_MAIN)) {
        finish();
        return;
    }

    setContentView(R.layout.activity_main);
    // 其他初始化操作
}

结尾

通过上述步骤,你已经成功实现了 Android App 防止启动多次的功能。希望这篇教程可以帮助你顺利解决这个问题,如果还有其他疑问,欢迎随时向我提问。祝你在开发路上越走越远!