【问题标题】:Android run multiple launch intentsAndroid 运行多个启动意图
【发布时间】:2016-06-24 15:57:30
【问题描述】:

在我的应用程序中,我正在尝试一个接一个地启动多个应用程序活动。这些是系统上的其他应用程序

例如:

startActivity(getPackageManager().getLaunchIntentForPackage(packageInfo.packageName));

如果我只是为了让我们说“Application1”而调用 startActivity,那么应用程序将正常启动,但如果我连续两次调用 startActivity(一次用于“Applicaiton1”,再次用于“Application2”),那么它只会启动第二次startActivity - 没有错误显示表明第一个 startActivity 失败

【问题讨论】:

    标签: java android android-intent start-activity


    【解决方案1】:

    没有错误提示第一个startActivity失败

    那是因为第一个startActivity()成功了。

    startActivity() 是异步的。它会立即返回,早在您请求的活动开始之前。连续两次调用startActivity() 将启动这两个活动,用户最终会看到第二个活动,因为它在任务的后台堆栈中位于最顶端。

    最有可能的正确答案是“不要做你想做的事”。话虽这么说,唯一可能让它工作的方法是让你调用第一个startActivity(),然后等到控制权在未来的生命周期方法中返回给你(例如,onStart())调用第二个@987654327 @。

    【讨论】:

    • 看到堆栈的顶部似乎是正确的,这就是我所看到的。但是,如果我按下概览按钮,第一个应用程序不在概览中
    • @GrayShadow:默认情况下,它将与您的应用程序和第二个应用程序在同一任务中。因此,默认情况下,它不会显示在概览屏幕中。
    • 感谢您迄今为止的所有帮助 - 有没有办法让它出现在概览中?
    • @GrayShadow:见Intent.FLAG_ACTIVITY_NEW_TASKdeveloper.android.com/reference/android/content/…
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-01-28
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多