# shortcut

This application creates a new shortcut on the android home screen.

## Arguments

The shortcut app has the following arguments:

 - `<name>` - name of the shortcut (required).
 - `<url>` - URL to be launched. To launch a mojo application, use a mojo:// URL
   (required).
 - `<icon_url>` - URL of the icon to use (optional).
