Skip to main content

Creating Chooser for Intents

 There's a way around you can create your own chooser that asks you to pick an activity without asking if you always want to use it.




This task can be acheived using 'Intent.createChooser()'.

Intent.createChooser() allows you to specify a title for the chooser dialog, and doesn’t give the user the option of selecting an activity to use by default. It also lets the user know if there are no matching activities by displaying a message.

Syntax:

Intent chosenIntent = Intent.createChooser(intent, "Send message...");

intent is the original Intent that we have made which describe the types of activity you want the chooser to display.

"Send message..." here specifies the title of the activity chooser.

The createChooser() method returns a brand-new Intent.


What happens in the background:
1) The createChooser() method gets called.
The method includes an intent that specifies the action and MIME type that’s required.

2)Android create a chooser for activities that support.It matches on the actions, type of data and categories they can support.

3)Android lets the user to select the activity but this time it doesn’t give the user the option of always using a particular activity.
Also when no activity are found corresponding to that intent action it doesn't throw any exception rather it displays a message telling that there are no apps that can perform the action.

4)When the user chooses which activity she wants to use, Android returns a new explicit intent describing the chosen activity. The new intent includes any extra information that was included in the original intent, such as any extra text.

5)The activity asks Android to start the activity specified in the intent.

6)Android asks the activity specified by the intent to start, and then passes it the intent.

Comments

Popular posts from this blog

Firebase FireStore

  Firestore is a subset of Firebase-Real-Time Database Firestore is a NOSQL Cloud Database which is extremely,customizable,efficient and scalable. Unlike SQL,we don't need to specify the column name and entity before putting the data in the table rather in NOSQL we don't need to predefined the structure of the database. In case of NOSQL, Database is called collection and Tables are called Documents. Documents allow us to add key-value pair which is basically the json format because json is easy to manipulate,query and very flexible. We can add documents inside the collection by specifing its name otherwise firebase we create an id for it. SetUp: 1) Inside Android Studio,go to tools select Firebase. 2) CLick on Log an Analytics event below the Analytics. 3) You will be redirected to login with your google account. 4) Log In into your account. 5) Go back to Studio you will that the Connected will be written with checked sign. 6) Now click on Add Analytics to your app.Now android ...

Android Basics

  The Android Runtime(Art): Java apps take too much memory and time to run inside the JVM especially running on low powered processors or low memory device.So in order to decrease these two factors Android have their own virtual machine to run the apps called the Android Runtime(Art). First .java code is converted to .class code. Then .class code is converted to .dex file. Finally the .dex file is converted .apk file. All .class, .dex, .apk are machine readable language. Android SDK: The Android Software Development Kit contains the libraries and tools you need to develop android apps. Some main things inside SDK: 1)SDK Platform: There's one for each version of Android. 2) SDK Tools: Tools for useful utilities like debugging and testing. 3) Sample Apps: To get information about how to use some APIs sample apps provide great help. 4)Documentation: Offline documentation. 5) Android Support: Extra APIs that aren't available in the standard platform. 6) Google Play Billing: It help...