20

私のプロジェクトのアクティビティではなく、他のアプリケーションのアクティビティに対して明示的なインテントを起動することは可能ですか?

私はこのコードに確信があり、それが実行されていることを知っています

Intent i=new Intent(this,MyActivity.class);

しかし、このようなことは可能ですか

Intent i=new Intent(this,com.bzz.bla.bla.SomeActivity.class);

つまり、他のアプリケーション (他の apk に含まれるアクティビティ) からアクティビティを明示的に開始する正確な方法は何ですか?

試してみましたが、強制終了メッセージが表示されません。

4

5 に答える 5

41

はい、可能です。しかし、インテントの作成は異なります。これを試してください:

Intent intent = new Intent();
intent.setComponent(new ComponentName("The package name of the activity that you wish to launch","Its fully qualified class name"));
startActivityForResult(intent);
于 2011-07-26T11:46:24.100 に答える
8

はい、可能です。しかし、インテントの作成は少し異なります。

Intent intent = new Intent();
intent.setComponent(new ComponentName("The package name of the activity that you wish to launch","Its fully qualified class name"));
startActivity(intent);

ただし、ランダムなアプリのアクティビティを呼び出すことはできません。その特定のアクティビティには、MAINアクションを持つインテントフィルターが必要です。

于 2011-07-26T11:23:22.603 に答える
0
Intent intent = new Intent(Intent.ACTION_MAIN);
intent.setClassName("np.birthday.com.order", "np.birthday.com.order.MainActivity");// intent.setClassName("Package NAme of another application", "np.birthday.com.order.MainActivity");
startActivity(intent);
于 2016-05-25T06:31:05.760 に答える