2017-06-26 12 views
0

私はこのコードを持っています。何らかの理由でそれは最初のインテントではなく最後のインテントを開始します。助言がありますか?Androidは私のアプリから2つのアプリケーションを起動します

private void launchApps(String m) 
{ 
    if (m.equals("Two")) 
    { 
     Intent a = getPackageManager().getLaunchIntentForPackage("Firstapp"); 
     startActivity(a); 

     Intent b = getPackageManager().getLaunchIntentForPackage("Secondapp"); 
     startActivity(b); 
    } 
} 

しかし、何らかの理由で、インテントbのみが開始されます。

+0

を試してみてください。私はAが始まる瞬間、Bはすぐに始まり、Aを置き換えると思う。 – drum

+0

一度にフォアグラウンド化できるアプリケーションは1つだけです –

答えて

0

これを試しましたか?

private void launchApps(String m) 
{ 
    if (m.equals("Two")) 
    { 
     Intent a = new Intent(this, FirstActivity.class); 
     startActivity(a); 

     Intent b = new Intent(this, SecondActivity.class); 
     startActivity(b); 
    } 
} 

動作しない場合。 `;

は` startActivity(b)の前にブレークポイントを入れてみてください。この

Intent a = getPackageManager().getLaunchIntentForPackage("Firstapp"); 
    startActivity(a); 

    new Handler().postDelayed(new Runnable() { 
     @Override 
     public void run() { 

      Intent b = getPackageManager().getLaunchIntentForPackage("Secondapp"); 
      startActivity(b); 
     } 
    }, 500); 
+0

これはクラスではなく、電話機にインストールされた2つのアプリです。 Google ChromeとGoogleマップのように。 – Jayce

+0

@Jayce ok、更新されたコードを見てください。それがあなたを助けることを願ってください。 –

+0

2番目の方法はうまくいきました。 – Jayce

関連する問題