What you need to use are intent-filters
. Assume the activity to be launched is in the package launch.me
. Inside this applications manifest all the activities (main or otherwise) will be decalred by the <activity>
tag.
Assuming the activity you want to launch is inside the class file Launchme
. Then a portion of your manifest will be something like:
<activity android:name="launch.me.Launchme"
android:label="@string/app_name">
<intent-filter>
<action android:name="launch.me.action.LAUNCH_IT"/>
<category android:name="android.intent.category.DEFAULT"/>
</intent-filter>
</activity>
Now in the activity from where you want to launch the above activity use:(Note: This activity can be in any package anywhere. You have to make sure that both, the calling and the called packages are available on the device)
Intent i=new Intent();
i.setAction("launch.me.action.LAUNCH_IT");
startActivityForResult(i,0);
You can use other methods for starting the intent other than startActivityForResult
, thats upto you.