Showing posts with label Intent. Show all posts
Showing posts with label Intent. Show all posts

How to Declare an Intent object

Intent() was added in API Level 1

1. In the MainActivity.java file, and add the below import to the import section.

import android.content.Intent;

2. Add this line below to the onCreate method. This will create a new Intent named myIntent.

Intent myIntent;

3. Compile and run!

Next Recommended Article: How to Set an Intent to Display the Android Device Location Settings Page

Resources:
http://developer.android.com/reference/android/content/Intent.html#Intent()
developer.android.com/training/sharing/send.html

How to Create an Intent for an Activity

public Intent (Context packageContext, Class<?> cls) was added in API level 1
Create an intent for a specific component. All other fields (action, data, type, class) are null, though they can be modified later with explicit calls. This provides a convenient way to create an intent that is intended to execute a hard-coded class name, rather than relying on the system to find an appropriate class for you;
Parameters:
packageContext - A Context of the application package implementing this class.
cls - The component class that is to be used for the intent.

1. In the MainActivity.java file, add the below to the imports section.

import android.content.Intent;

2. Add the line below to the onCreate method. This will set an intent for the activity named MainActivity and set it to an intent named myIntent.

Intent myIntent = new Intent(this, MainActivity.class);

startActivity - How to Start an Activity

public void startActivity (Intent intent) was added in API level 1
Launch a new activity. You will not receive any information about when the activity exits. This implementation overrides the base version, providing information about the activity performing the launch. Because of this additional information, the FLAG_ACTIVITY_NEW_TASK launch flag is not required; if not specified, the new activity will be added to the task of the caller.
Parameters: intent - The intent to start.

1. In the MainActivity.java file, in the onCreate method, Declare an Intent object named myIntent.

2. Now you need to set the intent to the activity you would like to open. Some examples are: Create an Intent to Open a New Activity/Screen, Set an Intent to Display the Android Device Location Settings Page

3. Add the below import to the imports section in the MainActivity.java file.

import android.content.ActivityNotFoundException;

4. In the MainActivity.java file, add the code below to the onCreate method.

try {
    startActivity(myIntent);
} catch  ( ActivityNotFoundException e) {
     e.printStackTrace();
}


startActivityForResult - How to Start an Activity with a Return Result upon Return

public void startActivityForResult (Intent intent, int requestCode) was added in API level 1
Same as calling startActivityForResult(Intent, int, Bundle) with no options.
Parameters:
intent - The intent to start.
requestCode - If >= 0, this code will be returned in onActivityResult() when the activity exits.
You may want to know when an activity has been returned so that you can perform some type of action.

1. Create an Intent to Open a New Activity/Screen

2. Declare the below class constant. After public class and before the onCreate method.

private static final int ACTIVITY_CREATE=0;

3. In the MainActivity.java file, add the code below to the onCreate method.

try {
    startActivityForResult(myIntent, ACTIVITY_CREATE);
} catch  ( ActivityNotFoundException e) {
     e.printStackTrace();
}


4. Compile and run!

Next Recommended Article: onActivityResult - Get the Result of an Activity Upon Return

Resources:
http://developer.android.com/reference/android/app/Activity.html#startActivityForResult(android.content.Intent, int)

startActivity - Start a New Activity using Action Chooser

public void startActivity (Intent intent) was added in API level 1
Same as startActivity(Intent, Bundle) with no options specified.
Parameters: intent - The intent to start.
Throws: android.content.ActivityNotFoundException

2. In the MainActivity.java file, add the code below to the onCreate method.

try {
    startActivity(myChooser);
} catch  ( ActivityNotFoundException e) {
     e.printStackTrace();
}


Intent.createChooser - Create an Action Chooser Intent

public static Intent createChooser (Intent target, CharSequence title) was added in API level 1
Builds a new ACTION_CHOOSER Intent that wraps the given target intent, also optionally supplying a title. If the target intent has specified FLAG_GRANT_READ_URI_PERMISSION or FLAG_GRANT_WRITE_URI_PERMISSION, then these flags will also be set in the returned chooser intent, with its ClipData set appropriately: either a direct reflection of getClipData() if that is non-null, or a new ClipData built from getData().
Parameters:
target - The Intent that the user will be selecting an activity to perform.
title - Optional title that will be displayed in the chooser.
Returns a new Intent object that you can hand to Context.startActivity() and related methods.

1. Intent.EXTRA_SUBJECT - Create a Subject Line of a Message

2. In the MainActivity.java file, add the line below in the onCreate method. This create an action chooser intent named myChooser.

Intent myChooser = Intent.createChooser(mySendIntent, “Share to...”);

3. Compile and run!

Next Recommended Article: startActivty - Start a New Activity

Resources:
http://developer.android.com/reference/android/content/Intent.html#createChooser(android.content.Intent, java.lang.CharSequence)

Intent.EXTRA_SUBJECT - Create a Subject Line of a Message

public static final String EXTRA_SUBJECT was added in API level 1
A constant string holding the desired subject line of a message. Constant Value: "android.intent.extra.SUBJECT"

1. Send Extended Data to an Intent to an intent named mySendIntent, with an activity action of ACTION_SEND, and a MIME type of "text/plain", with a putExtra name of Intent.EXTRA_SUBJECT and a value of "This is my subject."

2. Compile and run!

Previous Recommended Article: Intent.EXTRA_TEXT

Resources:
http://developer.android.com/reference/android/content/Intent.html#EXTRA_SUBJECT

Intent.EXTRA_TEXT

public static final String EXTRA_TEXT was added in API level 1
A constant CharSequence that is associated with the Intent, used with ACTION_SEND to supply the literal data to be sent. Note that this may be a styled CharSequence, so you must use Bundle.getCharSequence() to retrieve it. Constant Value: "android.intent.extra.TEXT"

1. Send Extended Data to an Intent to an intent named mySendIntent, with an activity action of ACTION_SEND, and a MIME type of "text/plain", with a name of Intent.EXTRA_TEXT and a value of "This is my text to send."

2. Compile and run!

Next Recommended Article: Intent.EXTRA_SUBJECT - Create a Subject Line of a Message

Resources:
http://developer.android.com/reference/android/content/Intent.html#EXTRA_TEXT

Intent setType(String type) - How to Set an Explicit MIME data type

public Intent setType (String type) was added in API level 1
Set an explicit MIME data type.
This is used to create intents that only specify a type and not data, for example to indicate the type of data to return.This method automatically clears any data that was previously set (for example by setData(Uri)).
Note: MIME type matching in the Android framework is case-sensitive, unlike formal RFC MIME types. As a result, you should always write your MIME types with lower case letters, or use normalizeMimeType(String) or setTypeAndNormalize(String) to ensure that it is converted to lower case.
Parameters:
type - The MIME type of the data being handled by this intent.
Returns the same Intent object, for chaining multiple calls into a single statement.

1. Create an Intent to Send Data from an Activity

2. Add the below line to the onCreate method. This will set the MIME type to "text/plain". Use */* if the MIME type is unknown

mySendIntent.setType("text/plain"); 

3. Compile and run!

4. Here are some common MIME types:

image/jpeg
audio/mpeg4-generic
text/html
audio/mpeg
audio/aac
audio/wav
audio/ogg
audio/midi
audio/x-ms-wma
video/mp4
video/x-msvideo
video/x-ms-wmv
image/png
image/jpeg
image/gif
.xml ->text/xml
.txt -> text/plain
.cfg -> text/plain
.csv -> text/plain
.conf -> text/plain
.rc -> text/plain
.htm -> text/html
.html -> text/html
.pdf -> application/pdf
.apk -> application/vnd.android.package-archive



A LARGER MIME Type List

Extension MIME type
.3dm x-world/x-3dmf
.3dmf x-world/x-3dmf
.a application/octet-stream
.aab application/x-authorware-bin
.aam application/x-authorware-map
.aas application/x-authorware-seg
.abc text/vnd.abc
.acgi text/html
.afl video/animaflex
.ai application/postscript
.aif audio/aiff
.aif audio/x-aiff
.aifc audio/aiff
.aifc audio/x-aiff
.aiff audio/aiff
.aiff audio/x-aiff
.aim application/x-aim
.aip text/x-audiosoft-intra
.ani application/x-navi-animation
.aos application/x-nokia-9000-communicator-add-on-software
.aps application/mime
.arc application/octet-stream
.arj application/arj
.arj application/octet-stream
.art image/x-jg
.asf video/x-ms-asf
.asm text/x-asm
.asp text/asp
.asx application/x-mplayer2
.asx video/x-ms-asf
.asx video/x-ms-asf-plugin
.au audio/basic
.au audio/x-au
.avi application/x-troff-msvideo
.avi video/avi
.avi video/msvideo
.avi video/x-msvideo
.avs video/avs-video
.bcpio application/x-bcpio
.bin application/mac-binary
.bin application/macbinary
.bin application/octet-stream
.bin application/x-binary
.bin application/x-macbinary
.bm image/bmp
.bmp image/bmp
.bmp image/x-windows-bmp
.boo application/book
.book application/book
.boz application/x-bzip2
.bsh application/x-bsh
.bz application/x-bzip
.bz2 application/x-bzip2
.c text/plain
.c text/x-c
.c++ text/plain
.cat application/vnd.ms-pki.seccat
.cc text/plain
.cc text/x-c
.ccad application/clariscad
.cco application/x-cocoa
.cdf application/cdf
.cdf application/x-cdf
.cdf application/x-netcdf
.cer application/pkix-cert
.cer application/x-x509-ca-cert
.cha application/x-chat
.chat application/x-chat
.class application/java
.class application/java-byte-code
.class application/x-java-class
.com application/octet-stream
.com text/plain
.conf text/plain
.cpio application/x-cpio
.cpp text/x-c
.cpt application/mac-compactpro
.cpt application/x-compactpro
.cpt application/x-cpt
.crl application/pkcs-crl
.crl application/pkix-crl
.crt application/pkix-cert
.crt application/x-x509-ca-cert
.crt application/x-x509-user-cert
.csh application/x-csh
.csh text/x-script.csh
.css application/x-pointplus
.css text/css
.cxx text/plain
.dcr application/x-director
.deepv application/x-deepv
.def text/plain
.der application/x-x509-ca-cert
.dif video/x-dv
.dir application/x-director
.dl video/dl
.dl video/x-dl
.doc application/msword
.dot application/msword
.dp application/commonground
.drw application/drafting
.dump application/octet-stream
.dv video/x-dv
.dvi application/x-dvi
.dwf drawing/x-dwf (old)
.dwf model/vnd.dwf
.dwg application/acad
.dwg image/vnd.dwg
.dwg image/x-dwg
.dxf application/dxf
.dxf image/vnd.dwg
.dxf image/x-dwg
.dxr application/x-director
.el text/x-script.elisp
.elc application/x-bytecode.elisp (compiled elisp)
.elc application/x-elc
.env application/x-envoy
.eps application/postscript
.es application/x-esrehber
.etx text/x-setext
.evy application/envoy
.evy application/x-envoy
.exe application/octet-stream
.f text/plain
.f text/x-fortran
.f77 text/x-fortran
.f90 text/plain
.f90 text/x-fortran
.fdf application/vnd.fdf
.fif application/fractals
.fif image/fif
.fli video/fli
.fli video/x-fli
.flo image/florian
.flv flv-application/octet-stream
.flx text/vnd.fmi.flexstor
.fmf video/x-atomic3d-feature
.for text/plain
.for text/x-fortran
.fpx image/vnd.fpx
.fpx image/vnd.net-fpx
.frl application/freeloader
.funk audio/make
.g text/plain
.g3 image/g3fax
.gif image/gif
.gl video/gl
.gl video/x-gl
.gsd audio/x-gsm
.gsm audio/x-gsm
.gsp application/x-gsp
.gss application/x-gss
.gtar application/x-gtar
.gz application/x-compressed
.gz application/x-gzip
.gzip application/x-gzip
.gzip multipart/x-gzip
.h text/plain
.h text/x-h
.hdf application/x-hdf
.help application/x-helpfile
.hgl application/vnd.hp-hpgl
.hh text/plain
.hh text/x-h
.hlb text/x-script
.hlp application/hlp
.hlp application/x-helpfile
.hlp application/x-winhelp
.hpg application/vnd.hp-hpgl
.hpgl application/vnd.hp-hpgl
.hqx application/binhex
.hqx application/binhex4
.hqx application/mac-binhex
.hqx application/mac-binhex40
.hqx application/x-binhex40
.hqx application/x-mac-binhex40
.hta application/hta
.htc text/x-component
.htm text/html
.html text/html
.htmls text/html
.htt text/webviewhtml
.htx text/html
.ice x-conference/x-cooltalk
.ico image/x-icon
.idc text/plain
.ief image/ief
.iefs image/ief
.iges application/iges
.iges model/iges
.igs application/iges
.igs model/iges
.ima application/x-ima
.imap application/x-httpd-imap
.inf application/inf
.ins application/x-internett-signup
.ip application/x-ip2
.isu video/x-isvideo
.it audio/it
.iv application/x-inventor
.ivr i-world/i-vrml
.ivy application/x-livescreen
.jam audio/x-jam
.jav text/plain
.jav text/x-java-source
.java text/plain
.java text/x-java-source
.jcm application/x-java-commerce
.jfif image/jpeg
.jfif image/pjpeg
.jfif-tbnl image/jpeg
.jpe image/jpeg
.jpe image/pjpeg
.jpeg image/jpeg
.jpeg image/pjpeg
.jpg image/jpeg
.jpg image/pjpeg
.jps image/x-jps
.js application/x-javascript
.jut image/jutvision
.kar audio/midi
.kar music/x-karaoke
.ksh application/x-ksh
.ksh text/x-script.ksh
.la audio/nspaudio
.la audio/x-nspaudio
.lam audio/x-liveaudio
.latex application/x-latex
.lha application/lha
.lha application/octet-stream
.lha application/x-lha
.lhx application/octet-stream
.list text/plain
.lma audio/nspaudio
.lma audio/x-nspaudio
.log text/plain
.lsp application/x-lisp
.lsp text/x-script.lisp
.lst text/plain
.lsx text/x-la-asf
.ltx application/x-latex
.lzh application/octet-stream
.lzh application/x-lzh
.lzx application/lzx
.lzx application/octet-stream
.lzx application/x-lzx
.m text/plain
.m text/x-m
.m1v video/mpeg
.m2a audio/mpeg
.m2v video/mpeg
.m3u audio/x-mpequrl
.man application/x-troff-man
.map application/x-navimap
.mar text/plain
.mbd application/mbedlet
.mc$ application/x-magic-cap-package-1.0
.mcd application/mcad
.mcd application/x-mathcad
.mcf image/vasa
.mcf text/mcf
.mcp application/netmc
.me application/x-troff-me
.mht message/rfc822
.mhtml message/rfc822
.mid application/x-midi
.mid audio/midi
.mid audio/x-mid
.mid audio/x-midi
.mid music/crescendo
.mid x-music/x-midi
.midi application/x-midi
.midi audio/midi
.midi audio/x-mid
.midi audio/x-midi
.midi music/crescendo
.midi x-music/x-midi
.mif application/x-frame
.mif application/x-mif
.mime message/rfc822
.mime www/mime
.mjf audio/x-vnd.audioexplosion.mjuicemediafile
.mjpg video/x-motion-jpeg
.mm application/base64
.mm application/x-meme
.mme application/base64
.mod audio/mod
.mod audio/x-mod
.moov video/quicktime
.mov video/quicktime
.movie video/x-sgi-movie
.mp2 audio/mpeg
.mp2 audio/x-mpeg
.mp2 video/mpeg
.mp2 video/x-mpeg
.mp2 video/x-mpeq2a
.mp3 audio/mpeg3
.mp3 audio/x-mpeg-3
.mp3 video/mpeg
.mp3 video/x-mpeg
.mpa audio/mpeg
.mpa video/mpeg
.mpc application/x-project
.mpe video/mpeg
.mpeg video/mpeg
.mpg audio/mpeg
.mpg video/mpeg
.mpga audio/mpeg
.mpp application/vnd.ms-project
.mpt application/x-project
.mpv application/x-project
.mpx application/x-project
.mrc application/marc
.ms application/x-troff-ms
.mv video/x-sgi-movie
.my audio/make
.mzz application/x-vnd.audioexplosion.mzz
.nap image/naplps
.naplps image/naplps
.nc application/x-netcdf
.ncm application/vnd.nokia.configuration-message
.nif image/x-niff
.niff image/x-niff
.nix application/x-mix-transfer
.nsc application/x-conference
.nvd application/x-navidoc
.o application/octet-stream
.oda application/oda
.omc application/x-omc
.omcd application/x-omcdatamaker
.omcr application/x-omcregerator
.p text/x-pascal
.p10 application/pkcs10
.p10 application/x-pkcs10
.p12 application/pkcs-12
.p12 application/x-pkcs12
.p7a application/x-pkcs7-signature
.p7c application/pkcs7-mime
.p7c application/x-pkcs7-mime
.p7m application/pkcs7-mime
.p7m application/x-pkcs7-mime
.p7r application/x-pkcs7-certreqresp
.p7s application/pkcs7-signature
.part application/pro_eng
.pas text/pascal
.pbm image/x-portable-bitmap
.pcl application/vnd.hp-pcl
.pcl application/x-pcl
.pct image/x-pict
.pcx image/x-pcx
.pdb chemical/x-pdb
.pdf application/pdf
.pfunk audio/make
.pfunk audio/make.my.funk
.pgm image/x-portable-graymap
.pgm image/x-portable-greymap
.pic image/pict
.pict image/pict
.pkg application/x-newton-compatible-pkg
.pko application/vnd.ms-pki.pko
.pl text/plain
.pl text/x-script.perl
.plx application/x-pixclscript
.pm image/x-xpixmap
.pm text/x-script.perl-module
.pm4 application/x-pagemaker
.pm5 application/x-pagemaker
.png image/png
.pnm application/x-portable-anymap
.pnm image/x-portable-anymap
.pot application/mspowerpoint
.pot application/vnd.ms-powerpoint
.pov model/x-pov
.ppa application/vnd.ms-powerpoint
.ppm image/x-portable-pixmap
.pps application/mspowerpoint
.pps application/vnd.ms-powerpoint
.ppt application/mspowerpoint
.ppt application/powerpoint
.ppt application/vnd.ms-powerpoint
.ppt application/x-mspowerpoint
.ppz application/mspowerpoint
.pre application/x-freelance
.prt application/pro_eng
.ps application/postscript
.psd application/octet-stream
.pvu paleovu/x-pv
.pwz application/vnd.ms-powerpoint
.py text/x-script.phyton
.pyc applicaiton/x-bytecode.python
.qcp audio/vnd.qcelp
.qd3 x-world/x-3dmf
.qd3d x-world/x-3dmf
.qif image/x-quicktime
.qt video/quicktime
.qtc video/x-qtc
.qti image/x-quicktime
.qtif image/x-quicktime
.ra audio/x-pn-realaudio
.ra audio/x-pn-realaudio-plugin
.ra audio/x-realaudio
.ram audio/x-pn-realaudio
.ras application/x-cmu-raster
.ras image/cmu-raster
.ras image/x-cmu-raster
.rast image/cmu-raster
.rexx text/x-script.rexx
.rf image/vnd.rn-realflash
.rgb image/x-rgb
.rm application/vnd.rn-realmedia
.rm audio/x-pn-realaudio
.rmi audio/mid
.rmm audio/x-pn-realaudio
.rmp audio/x-pn-realaudio
.rmp audio/x-pn-realaudio-plugin
.rng application/ringing-tones
.rng application/vnd.nokia.ringing-tone
.rnx application/vnd.rn-realplayer
.roff application/x-troff
.rp image/vnd.rn-realpix
.rpm audio/x-pn-realaudio-plugin
.rt text/richtext
.rt text/vnd.rn-realtext
.rtf application/rtf
.rtf application/x-rtf
.rtf text/richtext
.rtx application/rtf
.rtx text/richtext
.rv video/vnd.rn-realvideo
.s text/x-asm
.s3m audio/s3m
.saveme application/octet-stream
.sbk application/x-tbook
.scm application/x-lotusscreencam
.scm text/x-script.guile
.scm text/x-script.scheme
.scm video/x-scm
.sdml text/plain
.sdp application/sdp
.sdp application/x-sdp
.sdr application/sounder
.sea application/sea
.sea application/x-sea
.set application/set
.sgm text/sgml
.sgm text/x-sgml
.sgml text/sgml
.sgml text/x-sgml
.sh application/x-bsh
.sh application/x-sh
.sh application/x-shar
.sh text/x-script.sh
.shar application/x-bsh
.shar application/x-shar
.shtml text/html
.shtml text/x-server-parsed-html
.sid audio/x-psid
.sit application/x-sit
.sit application/x-stuffit
.skd application/x-koan
.skm application/x-koan
.skp application/x-koan
.skt application/x-koan
.sl application/x-seelogo
.smi application/smil
.smil application/smil
.snd audio/basic
.snd audio/x-adpcm
.sol application/solids
.spc application/x-pkcs7-certificates
.spc text/x-speech
.spl application/futuresplash
.spr application/x-sprite
.sprite application/x-sprite
.src application/x-wais-source
.ssi text/x-server-parsed-html
.ssm application/streamingmedia
.sst application/vnd.ms-pki.certstore
.step application/step
.stl application/sla
.stl application/vnd.ms-pki.stl
.stl application/x-navistyle
.stp application/step
.sv4cpio application/x-sv4cpio
.sv4crc application/x-sv4crc
.svf image/vnd.dwg
.svf image/x-dwg
.svr application/x-world
.svr x-world/x-svr
.swf application/x-shockwave-flash
.t application/x-troff
.talk text/x-speech
.tar application/x-tar
.tbk application/toolbook
.tbk application/x-tbook
.tcl application/x-tcl
.tcl text/x-script.tcl
.tcsh text/x-script.tcsh
.tex application/x-tex
.texi application/x-texinfo
.texinfo application/x-texinfo
.text application/plain
.text text/plain
.tgz application/gnutar
.tgz application/x-compressed
.tif image/tiff
.tif image/x-tiff
.tiff image/tiff
.tiff image/x-tiff
.tr application/x-troff
.tsi audio/tsp-audio
.tsp application/dsptype
.tsp audio/tsplayer
.tsv text/tab-separated-values
.turbot image/florian
.txt text/plain
.uil text/x-uil
.uni text/uri-list
.unis text/uri-list
.unv application/i-deas
.uri text/uri-list
.uris text/uri-list
.ustar application/x-ustar
.ustar multipart/x-ustar
.uu application/octet-stream
.uu text/x-uuencode
.uue text/x-uuencode
.vcd application/x-cdlink
.vcs text/x-vcalendar
.vda application/vda
.vdo video/vdo
.vew application/groupwise
.viv video/vivo
.viv video/vnd.vivo
.vivo video/vivo
.vivo video/vnd.vivo
.vmd application/vocaltec-media-desc
.vmf application/vocaltec-media-file
.voc audio/voc
.voc audio/x-voc
.vos video/vosaic
.vox audio/voxware
.vqe audio/x-twinvq-plugin
.vqf audio/x-twinvq
.vql audio/x-twinvq-plugin
.vrml application/x-vrml
.vrml model/vrml
.vrml x-world/x-vrml
.vrt x-world/x-vrt
.vsd application/x-visio
.vst application/x-visio
.vsw application/x-visio
.w60 application/wordperfect6.0
.w61 application/wordperfect6.1
.w6w application/msword
.wav audio/wav
.wav audio/x-wav
.wb1 application/x-qpro
.wbmp image/vnd.wap.wbmp
.web application/vnd.xara
.wiz application/msword
.wk1 application/x-123
.wmf windows/metafile
.wml text/vnd.wap.wml
.wmlc application/vnd.wap.wmlc
.wmls text/vnd.wap.wmlscript
.wmlsc application/vnd.wap.wmlscriptc
.word application/msword
.wp         application/wordperfect
.wp5         application/wordperfect
.wp5         application/wordperfect6.0
.wp6         application/wordperfect
.wpd         application/wordperfect
.wpd         application/x-wpwin
.wq1         application/x-lotus
.wri         application/mswrite
.wri         application/x-wri
.wrl         application/x-world
.wrl         model/vrml
.wrl         x-world/x-vrml
.wrz         model/vrml
.wrz         x-world/x-vrml
.wsc         text/scriplet
.wsrc application/x-wais-source
.wtk         application/x-wintalk
.xbm         image/x-xbitmap
.xbm         image/x-xbm
.xbm         image/xbm
.xdr         video/x-amt-demorun
.xgz         xgl/drawing
.xif         image/vnd.xiff
.xl application/excel
.xla application/excel
.xla application/x-excel
.xla application/x-msexcel
.xlb application/excel
.xlb application/vnd.ms-excel
.xlb application/x-excel
.xlc application/excel
.xlc application/vnd.ms-excel
.xlc application/x-excel
.xld application/excel
.xld application/x-excel
.xlk application/excel
.xlk application/x-excel
.xll application/excel
.xll application/vnd.ms-excel
.xll application/x-excel
.xlm application/excel
.xlm application/vnd.ms-excel
.xlm application/x-excel
.xls application/excel
.xls application/vnd.ms-excel
.xls application/x-excel
.xls application/x-msexcel
.xlt application/excel
.xlt application/x-excel
.xlv application/excel
.xlv application/x-excel
.xlw application/excel
.xlw application/vnd.ms-excel
.xlw application/x-excel
.xlw application/x-msexcel
.xm audio/xm
.xml application/xml
.xml text/xml
.xmz   xgl/movie
.xpix   application/x-vnd.ls-xpix
.xpm   image/x-xpixmap
.xpm   image/xpm
.x-png image/png
.xsr video/x-amt-showrun
.xwd   image/x-xwd
.xwd   image/x-xwindowdump
.xyz chemical/x-pdb
.z application/x-compress
.z application/x-compressed
.zip application/x-compressed
.zip application/x-zip-compressed
.zip application/zip
.zip multipart/x-zip
.zoo application/octet-stream
.zsh text/x-script.zsh

Next Recommended Article: putExtra - How to Send Extended Data to an Intent

Resources:
http://developer.android.com/reference/android/content/Intent.html#setType(java.lang.String)

Intent.ACTION_SEND - Create an Intent to Send Data from an Activity

ACTION_SEND was added in API Level 1
public static final String ACTION_SEND
indicates that the intent is sending data from one activity to another, even across process boundaries.
Activity Action: Deliver some data to someone else. Who the data is being delivered to is not specified; it is up to the receiver of this action to ask the user where the data should be sent.

When launching a SEND intent, you should usually wrap it in a chooser (through createChooser(Intent, CharSequence)), which will give the proper interface for the user to pick how to send your data and allow you to specify a prompt indicating what they are doing.

Input: getType() is the MIME type of the data being sent. get*Extra can have either a EXTRA_TEXT or EXTRA_STREAM field, containing the data to be sent. If using EXTRA_TEXT, the MIME type should be "text/plain"; otherwise it should be the MIME type of the data in EXTRA_STREAM. Use */* if the MIME type is unknown (this will only allow senders that can handle generic data streams). If using EXTRA_TEXT, you can also optionally supply EXTRA_HTML_TEXT for clients to retrieve your text with HTML formatting.
Optional standard extras, which may be interpreted by some recipients as appropriate, are: EXTRA_EMAIL, EXTRA_CC,EXTRA_BCC, EXTRA_SUBJECT.
Output: nothing. Constant Value: "android.intent.action.SEND"

1. Create an Intent with a Given Action. The action will be Intent.ACTION_SEND.

2. Compile and run!

Next Recommended Article: Intent setType(String type) - How to Set an Explicit MIME data type

Resources:
http://developer.android.com/reference/android/content/Intent.html#ACTION_SEND
http://developer.android.com/training/sharing/send.html


Intent(String action) - Create an Intent with a Given Action

public Intent (String action) was added in API level 1
Create an intent with a given action. All other fields (data, type, class) are null. Note that the action must be in a namespace because Intents are used globally in the system -- for example the system VIEW action is android.intent.action.VIEW; an application's custom action would be something like com.google.app.myapp.CUSTOM_ACTION.
Parameters: action - The Intent action, such as ACTION_VIEW.

1. In the MainActivity.java file, add the below line to the imports section.

import android.content.Intent;

2. Add this line below to the onCreate method. This will create an intent to deliver some data to another app. The new intent is named mySendIntent.

Intent mySendIntent = new Intent(Intent.ACTION_SEND);

3. Compile and run!

4. Other standard activity options are:

ACTION_MAIN, ACTION_VIEW, ACTION_ATTACH_DATA, ACTION_EDIT, ACTION_PICK, ACTION_CHOOSER, ACTION_GET_CONTENT, ACTION_DIAL, ACTION_CALL, ACTION_SEND, ACTION_SENDTO,  ACTION_ANSWER, ACTION_INSERT, ACTION_DELETE, ACTION_RUN,  ACTION_SYNC, ACTION_PICK_ACTIVITY, ACTION_SEARCH, ACTION_WEB_SEARCH, ACTION_FACTORY_TEST

Next Recommended Article: Intent setType(String type) - How to Set an Explicit MIME data type

Resources:
developer.android.com/reference/android/content/Intent.html#Intent(java.lang.String)

Intent() - How to a Create New Empty Intent object

Intent() was added in API Level 1
This will create an empty intent.

1. Open MainActivity.java file, and add the below import to the import section.

import android.content.Intent;

2. Add this line below to the onCreate method. This will create a new Intent named myIntent.

Intent myIntent = new Intent();

3. Compile and run!

Next Recommended Article:

Resources:
http://developer.android.com/reference/android/content/Intent.html#Intent()
developer.android.com/training/sharing/send.html

Bundle.getInt() - How to Get the Value of an Extra

Bundle.getInt() was added in API Level 1
public int getInt (String key)
Returns the value associated with the given key, or 0 if no mapping of the desired type exists for the given key.
Parameters: key a String
Returns: an int value

1. Retrive a map of Extended Data from Intent

2. Within the if statement from above(if there are extras), add the below code. 

    a. Declare an int variable named rowId. 

    b. Next, add the below code. This will check to make sure there are extras, and if so, will get an extra named RowId and save it to your integer rowId.

if (myExtras != null) {
rowId = extras.getInt("RowId");
} else {
rowId = -1;
}

3. Compile and run!

Next Recommended Article: Bundle.getInt() - How to Get the Value of an Extra

Resources:
http://developer.android.com/reference/android/os/Bundle.html#getInt(java.lang.String)


getExtras - How to Retrieve a map of Extended Data from Intent

getExtras was added in API Level 1
public Bundle getExtras ()
Retrieves a map of extended data from the intent.
Returns: the map of all extras previously added with putExtra(), or null if none have been added.
A bundle is A mapping from String values to various Parcelable types.
Get the extras and save them to a Bundle object called myExtras

1. Receive an Intent in your Activity

2. Inside the above if statement, add the following line of code. This will save any extras you may have to the Bundle variable named myExtras. 

Bundle myExtras = getIntent().getExtras();

3. Next, still within that if statement, add the below line to test if there are any extras in new variable myExtras.

if (myExtras != null) { 
    // extras exist
 } else {
    // extras do not exist

}

4. Compile and run!

getIntent - How to Receive an Intent in your Activity

Activity.getIntent was added in API Level 1

Return the intent that started this activity.
This method retrieves any incoming intent to the activity.

1. Start an Activity named NewActivity.java and newactivity.xml.

2 In NewActivity.java, add the below to the onCreate. This will make sure the intent is not null.

if(getIntent() != null) {
// do stuff here
}

3. Compile and run!

Next Recommended Article: getExtras - How to Retrieve a map of Extended Data from Intent


putExtra - How to Send Extended Data to an Intent

putExtra was added in API Level 1
Intent putExtra (String name, Bundle value)
Add extended data to the intent. The name must include a package prefix, for example the app com.android.contacts would use names like "com.android.contacts.ShowAll".
Parameters:
name - The name of the extra data, with package prefix.
value - The Bundle data value.
Returns the same Intent object, for chaining multiple calls into a single statement.

1.Create an intent by using examples such as,  Create an Intent to Open a New Activity/Screen or Create an Intent with a Given Action

2. In the MainActivity.java file, in the onCreate method, add the line below, as an example. RowId would be the name of the field and id would be the value.

myIntent.putExtra("RowId", 1); 

3. Compile and run!

Next Recommended Article: Intent.EXTRA_TEXT

Resources:
http://developer.android.com/reference/android/content/Intent.html#putExtra(java.lang.String, android.os.Bundle)