Android 完全退出当前应用程序的四种方法

下面我详细讲解一下“Android 完全退出当前应用程序的四种方法”的完整攻略。

1. 使用System.exit(0)方法

这种方法可以使用System.exit(0)方法来完成应用程序的退出。

示例代码如下:

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btnExit = findViewById(R.id.btn_exit);
        btnExit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                System.exit(0); // 退出当前应用程序
            }
        });
    }
}

2. 使用finish()方法

这种方法是使用Activity的finish()方法来完成退出操作。

示例代码如下:

public class MainActivity extends AppCompatActivity {
    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);

        Button btnExit = findViewById(R.id.btn_exit);
        btnExit.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                finish(); // 关闭当前Activity
            }
        });
    }

    @Override
    public void onBackPressed() {
        super.onBackPressed();
        finish(); // 按下返回键时关闭当前Activity
    }
}

3. 使用Activity管理器退出应用程序

这种方法使用ActivityManager来退出应用程序。

示例代码如下:

public class MyApplication extends Application {
    @Override
    public void onCreate() {
        super.onCreate();
    }

    /**
     * 退出应用程序
     */
    public void exit() {
        ActivityManager activityManager = (ActivityManager) getSystemService(Context.ACTIVITY_SERVICE);
        activityManager.killBackgroundProcesses(getPackageName());
        System.exit(0); // 退出程序
    }
}

4. 使用广播来退出应用程序

这种方法使用广播来退出应用程序。

示例代码如下:

public class ExitAppReceiver extends BroadcastReceiver {
    @Override
    public void onReceive(Context context, Intent intent) {
        if (intent.getAction().equals(Intent.ACTION_CLOSE_SYSTEM_DIALOGS)) {
            String reason = intent.getStringExtra(SYSTEM_REASON);
            if (TextUtils.equals(reason, SYSTEM_HOME_KEY) || TextUtils.equals(reason, SYSTEM_RECENT_APPS)) {
                ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
                activityManager.killBackgroundProcesses(context.getPackageName());
                System.exit(0); // 退出程序
            }
        }
    }
}

使用时需要在AndroidManifest.xml文件中注册该广播:

<receiver android:name=".ExitAppReceiver">
    <intent-filter>
        <action android:name="android.intent.action.CLOSE_SYSTEM_DIALOGS" />
    </intent-filter>
</receiver>

以上就是完整的“Android 完全退出当前应用程序的四种方法”攻略。希望对您有所帮助。

营销型网站