Autoplay
An implementation with a basic autoplay functionality can be enabled via the player configuration object:
var config = {
autoplay: true
};
var amp = akamai.amp.AMP.create("amp", config);
In this configuration, the player will only autoplay the media on platforms supporting unmuted playback.
If the player encounters a platform that cannot autoplay, but an autoplay
value of true
is present in the
config, an autoplayblocked
event is dispatched:
amp.addEventListener("autoplayblocked", function (event) {
var mode = event.detail.mode;
var threshold = event.detail.threshold;
console.log("Attemted autoplay '" + mode + "', but the browser's threshold is '" + threshold + "'")
})
The player can be configured to attempt muted, or muted inline, playback by providing an autoplayPolicy
:
var config = {
autoplay: true,
autoplayPolicy: "muted"
};
var amp = akamai.amp.AMP.create("amp", config);
The values for autoplayPolicy
are defined in the {@link akamai.amp.AutoplayPolicy} class and their values
represent the following functionality:
-
"default"
: The defaultautoplayPolicy.
The player will emulate the browser’s default behavior for autoplay, i.e., the player will only autoplay on platforms that support unrestricted playback. -
"muted"
: Player will mute on platforms that only allow muted playback. -
"none"
: The player will not attempt to detect autoplay.
By default, the player will run its autoplay detection routine the first time a player is created
if the autoplayPolicy
value is not none.
Running the detection before creating the player may be beneficial in certain scenarios. This can be achieved by explicitly calling {@link akamai.amp.AutoplayThreshold#init}:
akamai.amp.AutoplayThreshold.init()
.then(function (threshold) {
console.log("The browser's autoplay threshold is", threshold);
});