Changes Introduced in APL Version 1.1
(This is not the most recent version of the APL change log. Use the Other Versions option to see the documentation for the most recent version of the APL change log)
Alexa Presentation Language 1.1 introduces new features and capabilities for APL.
Work with APL versions
For details about how to check the APL version, see What's New in APL.
Vector graphics support
APL now supports Alexa vector graphics, a subset of the Scalable Vector Graphics standard. See these updates:
- Define a vector graphic with the Alexa Vector Graphics (AVG) Format.
- Store vector graphic definitions in the
graphics
property of the APL document or package. - Use the
VectorGraphic
component to display the graphic.
Animation support
APL now supports animation. You can animate the position, scale, rotation, or opacity of any APL component or layout. See the AnimateItem
Command.
User-defined commands
You can define and name custom commands in your APL document or package. These commands can take parameters and then call the standard APL commands.
- Define a command with the user-defined command format.
- Store command definitions in the
commands
property of the APL document or package.
Alexa Design System for APL
Packages for layouts, styles, and viewport profiles are now grouped within the Alexa Design System for APL.
New responsive components and templates
APL 1.1 introduces several new responsive components and templates as part of the Alexa Design System for APL (previously referred to as "Alexa layouts"). When you use these in your APL documents, you do not need to create the conditional logic to handle different screen sizes and shapes yourself.
To use the new components and templates, import the alexa-layouts
package into your document. Be sure to specify 1.1.0 for the version
:
{
"import": [
{
"name": "alexa-layouts",
"version": "1.1.0"
}
]
}
For an overview of the components and templates, see Responsive Components and Templates.
For details about the new responsive components, see:
For details about the new responsive templates, see:
For more about building responsive APL documents, see Build Responsive APL Documents
Alexa header changes
APL 1.1 adds the following new properties for AlexaHeader
:
headerBackButtonAccessibilityLabel
headerDivider
theme
headerBackButtonCommand
Note that the headerNavigationAction
parameter has been removed from the 1.1.0 version of AlexaHeader
. Use headerBackButtonCommand
to specify the command to run when the user selects the back button.
To use this updated version, be sure to specify 1.1.0 for the version
when you import the alexa-layouts
package.
Alexa footer changes
APL 1.1 introduces the following new properties for AlexaFooter
:
theme
Version 1.1.0 removes the deprecated footerHint
property. Use the hintText
property instead.
To use this updated layout, be sure to specify 1.1.0 for the version
when you import the alexa-layouts
package.
Other APL Updates
Commands
New commands:
New properties for Sequential
command:
- catch
- finally
Document
New top-level properties on APL Document:
- commands
- graphics
- onMount
- settings
Components
All components now support the following new properties:
accessibilityLabel
checked
disabled
display
onMount
transform
Components also now support the karaokeTarget
state, which can be used to control the color of text being spoken. See Styles.
- The
height
andwidth
of thePager
component default to 100dp if not specified. Theheight
andwidth
of a Pager must be either an absolute or relative dimension. You cannot useauto
. Theheight
andwidth
of the children of aPager
are fixed at "100%". - The default for the
navigation
property iswrap
.
- Video now supports the
onTimeUpdate
property. - You can now use the
disallowVideo
property in the data-binding context to determine whether the device supports video.
Data-binding context
New environment
properties are available in the data-binding context:
allowOpenURL
animation
aplVersion
disallowVideo
The viewport
object now includes the mode
property.
Transformers
- The
ssmlToSpeech
transformer now accepts only valid SSML text as input. The SSML must be wrapped in<speak>
tags. - A new
textToSpeech
transformer converts plain text into speech.
Both transformers work in the same way. Bind the output of the transformer to the speech
property of the component. See Transformers.
Last updated: Jun 18, 2024