5

我有一个启动器风格的应用程序。一旦用户启动应用程序,时钟就会开始滴答作响,经过一定时间后,用户会回到我的应用程序的主要活动并通知时间到了。

为了实现这一点,我有一个 AsyncTask,它的 doInBackground 会定期检查经过了多少时间(这部分工作正常)。然后:

    protected void onPostExecute(String s) {
        super.onPostExecute(s);
        Intent intent = new Intent(getApplicationContext(), HomeScreenMain.class);
        intent.addFlags(Intent.FLAG_ACTIVITY_REORDER_TO_FRONT);
        startActivity(intent);
    }

唯一的问题是它将我的应用程序保持在后台,尽管我假设启动了正确的活动。所以我的问题是,当时间到期时,我如何不仅可以启动此活动,而且可以将其置于用户可能从我的应用程序中启动的任何应用程序的顶部?

4

1 回答 1

0

用以下代码替换我的原始代码:

protected void onPostExecute(String s) {
    super.onPostExecute(s);
    Intent intent = new Intent();
    intent.setClass(HomeScreenMain.this, HomeScreenMain.class);
    intent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
    getApplicationContext().startActivity(intent);
}

成功了。

于 2013-09-23T17:21:46.663 回答