Come accennato in this answer, si può facilmente raggiungere che dando l'attività di un nome di azione nella manifest.xml dell'app:
<activity android:name="Activity3" ... >
<intent-filter>
<action android:name="com.company.package.FOO"/>
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
</activity>
quindi creare il seguente intent
da qualsiasi luogo, al fine di eseguire questa attività in particolare:
startActivity(new Intent("com.company.package.FOO"));
Dopo la precisazione che l'attività deve essere eseguito in primo luogo quando si esegue l'applicazione al posto del lanciatore, è possibile ottenere che, non impostando il contenuto dell'attività lanciatore e invece di creare un intento che gestisce l'attività desiderata:
MainActivity:
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.activity_layout); // remove this line
Intent intent = new Intent(ThisActivity.this, WantedActivity.class);
intent.putExtra("EXIT", false);
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
startActivity(intent);
}
fonte
2016-07-11 13:37:10
a meno che non si fanno attività launcher, non puoi –
Sono state prese delle [questa risposta] (http://stackoverflow.com/a/2180283/4281182) –
vuoi eseguirlo da un'altra app? !! o dal dispositivo stesso? !! –