Introduction

Intent Radio is a streaming internet radio app without a graphical user interface. It is controlled exclusively through the delivery of broadcast intents. Automation apps, such as Tasker, should be used to control streaming playback by issuing suitable broadcast intents.

This app must be run once before Android will deliver intents to its background service. This is an Android security feature.

Thereafter, including after reboots, it should not be necessary the run this app at all. Its service runs in the background.

Media Player

All aspects of media playback are handled by the built-in Android media player. Additionally, playlist URLs (whose URL/name must end with ".pls" or ".m3u") are also supported.

During playback, Intent Radio adds a notification to the notification area. Clicking on this notification stops playback.

Some URLs, notably the default BBC Radio 4 stream, take in excess of 30 seconds for playback to start. Sorry, but I do not know the source of the delay. Please be patient!

Broadcast Intents Received by IR

org.smblott.intentradio.PLAY

Extras:
url: the URL to play
name: the display name

If no name extra is provided, then the URL is used as the display name. If no url is provided, then a built-in URL for BBC Radio 4 is used.

org.smblott.intentradio.STOP

Stop playback.
No extras.

org.smblott.intentradio.PAUSE

Pause playback, but only if playing.
No extras.

org.smblott.intentradio.RESTART

Restart playback, but only if paused.
No extras.

org.smblott.intentradio.STATE_REQUEST

Request that Intent Radio broadcast its state (see below).
No extras.

This intent is not required to receive state updates. Intent Radio broadcasts its state automatically whenever that state changes.

Broadcast Intents Sent by IR

org.smblott.intentradio.STATE

Informs listeners (possibly Tasker) of changes in state. Extras:
state: the current state (see below)
url: the current url
name: the current name

The state is one stop, play, play/buffering, play/pause, play/dim or error.

More Information

See the project home page.

See the source code on GitHub, and the release notes/change log.

See also: Tasker.