Sample manifest when Content Launcher, Account Login, and Vega Media Control are integrated together
Content Launcher, Account Login and Vega Media Control are interrelated integrations. While each integration works independently with its corresponding manifest declarations, combining all three requires certain manifest entries to be overridden for proper functionality.
Below is a sample manifest configuration when all three integrations are included.
When integrating Vega Media Control with the W3C Media Player API, use the same manifest entries as shown in the sample.
[package]
title = "Content Launcher Sample"
version = "0.1.0"
id = "com.kepler.contentlauncherapp"
[components]
[[components.interactive]]
id = "com.kepler.contentlauncherapp.main"
runtime-module = "/com.amazon.kepler.keplerscript.runtime.loader_2@IKeplerScript_2_0"
launch-type = "singleton"
categories = ["com.amazon.category.main","com.amazon.category.kepler.media"]
[[components.service]]
id = "com.kepler.contentlauncherapp.interface.provider"
runtime-module = "/com.amazon.kepler.headless.runtime.loader_2@IKeplerScript_2_0"
launch-type = "singleton"
[processes]
[[processes.group]]
component-ids = ["com.kepler.contentlauncherapp.main"]
[[processes.group]]
component-ids = ["com.kepler.contentlauncherapp.interface.provider"]
# New required section for SDK v0.19 or later
[[message]]
uri = "pkg://com.kepler.contentlauncherapp.main"
sender-privileges = ["*"]
receiver-privileges = ["self"]
[offers]
[[offers.interaction]]
id = "com.kepler.contentlauncherapp.main"
[[offers.service]]
id = "com.kepler.contentlauncherapp.interface.provider"
required-privileges = ["com.amazon.multimedia.privilege.session.manage"]
# New required section for SDK v0.19 or later
[[offers.module]]
id = "/com.kepler.contentlauncherapp.module@IUris1"
includes-messages = ["pkg://com.kepler.contentlauncherapp.main"]
[[extras]]
key = "interface.provider"
component-id="com.kepler.contentlauncherapp.main"
[extras.value.application]
[[extras.value.application.interface]]
interface_name = "com.amazon.kepler.media.IContentLauncherServer"
attribute_options = ["partner-id"]
static-values = { partner-id = "PARTNER_ID" }
# The above entry can alternatively be used as shown below.
# [extras.value.application.interface.static-values]
# partner-id = "PARTNER_ID"
[[extras.value.application.interface]]
interface_name = "com.amazon.kepler.media.IAccountLoginServer"
attribute_options = ["Status"]
override_attribute_component = { Status = "com.kepler.contentlauncherapp.interface.provider" }
# Below IMediaPlaybackServer entry is needed for KMC integration. Needs to be added for Content Launcher to work.
[[extras.value.application.interface]]
interface_name = "com.amazon.kepler.media.IMediaPlaybackServer"
command_options = [
"Play",
"Pause",
"StartOver",
"Previous",
"Next",
"SkipForward",
"SkipBackward",
]
attribute_options = ["AudioAdvanceMuted"]
features = ["AdvancedSeek", "VariableSpeed", "AudioTracks", "TextTracks"]
[needs]
[[needs.module]]
id = "/com.amazon.kepler.media.@IAccountLogin1"
[[needs.module]]
id = "/com.amazon.kepler.media@IContentLauncher1"
Note: At this time, Content Launcher and Accoount Login are available to select partners only.