Search code examples
androidandroid-intentintentfilter

How to list Activities which match an intent?


I have a few separate applications which are all launched purely through a main application.

I am wondering if I'd be able to use intents to retrieve a list of all the sub-applications which match some discovery intent.

The main application currently needs to know what Intents to use to START these sub-applications, but is there a way to use intents to see if other Activities on the device match a set of intent-filters?


Solution

  • I am wondering if I'd be able to use intents to retrieve a list of all the sub-applications which match some discovery intent.

    Absolutely. Use PackageManager, and probably the queryIntentActivities() method, to achieve your goals.

    This old sample Java code demonstrates finding all launcher activities via queryIntentActivities().