Allowing other apps to start your app activity using Intent and Intent Filters

If you think your app is doing some useful work that might be useful to other apps. Then other apps can ask for results or open your app activity which does useful stuff for that particular app.
I will explain this by taking an example.
I have developed an app that can set reminders based on time, date, and reminder type and at that time you will get a notification with a title and description. So, this functionality might help other apps to set reminders on their behalf.
Here is the GitHub link for RemindMe app and switch to feature-other-apps branch.
I will not explain how I developed this app. My main focus is on how other apps can use this functionality.
Let’s start working on it.
- Clone the RemindMe App from GitHub and install it on your android device.
- Now, create an android project which will startActivity to Set Reminder.

3. I will first create a reminder edit screen. I will be using the same reminder screen which I used in my RemindMe app. I will explain this a little.
I am simply using two TextFields
, Dropdown
, DatePicker
, and TimePicker
to set reminders.
4. I want to explain to you an important thing that how I implemented to start RemindMe app edit reminder screen with filled data coming from intent.
For this, you need to add an intent filter in that activity that will handle ACTION_SEND
action.
You need to define an action. you can use any default actions provided by android and choose a category as well.
In the data, you need to provide URI schema and host. for our example, the URI string will look.
- schema is remindme
- host is reminder
- and appending queries title, description, startTimeInMillis, reminderType
5. In the ReminderApp you need to get intent that started your app activity. do it in onCreate()
We are simply breaking the URI into schema, host and queries and getting data from our URI.
6. Now, In SetReminderApp when the set reminder button is clicked we will create an implicit intent passing the Uri with all the data required.
Now, If we run both apps and let’s check the output.
You can set it any time and check the notification. I have set currentTime.
Thank you for reading!