1

Android アプリを使用して、外部アプリのコンポーネントを明示的に起動しようとしています。

ComponentName name =  new ComponentName("other.app.android", "other.app.android.Activity1");
Uri uri = Uri.parse("http://127.0.0.1:8111");
Intent abc = new Intent();
abc.setData(uri);
abc.setComponent(name);
startActivity(abc);

正しく実行するには、これらの 2 行を追加する必要がありますか?

(1)abc.addCategory("android.intent.category.DEFAULT");

(2)abc.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

4

1 に答える 1

0

正しく実行するには、これらの 2 行を追加する必要がありますか?

「正しく実行」は解釈の問題です。あなたはあなたが何をしたいのかを決める必要があります!

(1) abc.addCategory("android.intent.category.DEFAULT");

これは必要ありません。を呼び出すと、暗黙的な検索条件に DEFAULT カテゴリが自動的に追加されますstartActivity()

(2) abc.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

Activityターゲットを新しいタスクで開始する場合 (つまり、既存のタスクではなく)、これを追加できます。このフラグを追加しない場合、ターゲットActivityは現在のタスクで開始されます。それはあなたがしたい行動に依存します。

于 2016-08-19T10:23:47.183 に答える