步骤3: 设置示例应用(VSK Fire TV)
大多数正在集成VSK的开发者已经拥有自己的Fire TV应用。但是,许多开发者希望探索VSK工作流程并查看传入的Alexa指令,而不必在自己的应用中进行更改。可以使用集成了VSK的基本Fire TV应用(只需少量配置)。您可以使用这个示例应用来探索VSK,然后,在您探索完VSK的工作原理之后,对您的实际应用重新执行同样的过程。或者,您可以使用此示例Fire TV应用作为自己应用的起点。
如果您正在探索示例应用,请务必完成本主题中的所有步骤。
关于示例应用
示例应用是基于Leanback的基本Android应用,遵照仅限应用的集成模型集成了VSK。经过少量小型配置后,当您按标题要求Alexa提供视频时,应用会播放一个示例视频。示例应用使用IMDb目录。因此,当您要求提供几乎任何电影或电视节目时,示例应用应将该请求识别为其可用目录中的标题。但是,示例应用没有权限或视频URL来实际播放这些标题的影片。相反,示例应用将播放小型一般视频列表中的一个随机视频。
示例应用最重要的方面在于,它可以让您看到推送到应用的Alexa指令。示例应用未包含有关如何处理指令以在应用中执行特定操作的广泛逻辑,您需要根据自己的独特应用和内容自行确定逻辑(一些细节在步骤8: 对指令做出反应中进行了介绍)。但是,很可能您已经将这些搜索/播放内容操作映射到遥控器输入。要处理Alexa发送的指令,您只需要将语音输入映射到与遥控器输入相似的操作即可。
除了支持SearchAndPlay
和SearchAndDisplayResults
指令外,该示例应用还支持来自PlaybackController
接口的Play、Pause和Stop指令。要查看与这些指令相关的表述的列表,请参阅表述参考。
下载并安装Android Studio
要使用示例应用,请先下载并安装Android Studio。Android Studio包含JDK的捆绑版本,其可将Android项目编译成APK。有关在计算机上设置Android Studio开发环境的信息,请参阅Android Studio入门和安装Android Studio。
在Android Studio中下载并打开示例应用
要在Android Studio中打开示例应用:
-
前往github.com/alexa/alexa-sample-fire-tv-app-only-integration,单击Code(代码)按钮,然后复制克隆Git项目的链接 :
git clone git@github.com:alexa/alexa-sample-fire-tv-app-only-integration
(您也可以选择下载Zip文件。)
该存储库包含一个基于Android Leanback库的示例Android项目,其中包括一些用于在Fire TV上与VSK Agent交互的特殊类。
- 启动Android Studio。在Welcome(欢迎)对话框中,单击Open an existing Android Studio project(打开现有Android Studio项目)。
-
浏览到示例应用的根目录(包含 “app” 目录的目录),然后单击Open(打开)。
Gradle开始构建该项目。在构建过程中,单击Android Studio页脚中的Build(构建)按钮打开Gradle控制台,这样您就可以监控Gradle构建的进度。这样您将知晓构建是否成功或者Android Studio是否需要其他支持工具或库。如果Android Studio缺少任何需要的文件,会提示您安装此类文件。Gradle构建完成后,Build(构建)窗格将显示Project setup: successful(项目设置:成功),并带有绿色对勾标记。
-
单击左侧的Project(项目)侧选项卡可查看项目文件。确保您处于Android视图。
重要须知: 当Android打开项目时,默认情况下会显示Android视图。本文档中的说明将假设您使用的是此Android视图。 您可以在您选择的任何视图中工作,但请注意,不同视图中对文件位置的文档引用会有所不同。
在示例应用中自定义程序包名称
程序包名称在亚马逊应用商店中必须是唯一的,之后在开发者门户中使用安全配置文件和API密钥进行配置时,将需要唯一的程序包名称。示例应用中的默认程序包名称是com.example.vskfiretv.company
。在以下步骤中,您将把最后一个路径更改为实际公司名称,以确保程序包名称是唯一的(例如,com.example.vskfiretv.acme
)。确保在程序包名称中保留初始com.example.vskfiretv
路径(否则,将无法把示例应用的目录正确配置为后端基于IMDB的目录。)
要在示例应用中自定义程序包名称,请执行以下操作:
- 确保您处于Android视图。
-
单击Options(选项)菜单(齿轮图标),然后清除Compact Middle Packages(压缩中间程序包)旁边的复选框。
这样将在层次结构中显示
com.example.vskfiretv.company
程序包,并且展开com > example > vskfiretv > 公司文件夹。 -
右键单击company(公司)并选择Refactor(重构)> Rename(重命名)。
-
选择一个唯一的名称(例如您的姓名),然后单击Refactor(重构)。
-
单击Do Refactor(执行重构)。
-
前往app(应用)> manifests(清单),然后打开AndroidManifest.xml文件。将
package
名称com.example.vskfiretv.company
的每个实例更新为您的程序包名称(例如com.example.vskfiretv.mystreamz
)。 -
展开Gradle Scripts(Gradle脚本)并打开
build.gradle (Module: app)
。使用您唯一的程序包名称更新applicationId
值。例如:defaultConfig { applicationId "com.example.vskfiretv.mystreamz" minSdkVersion 23 targetSdkVersion 29 versionCode 1 versionName "1.0"
当您更新
build.gradle
文件时,Android Studio会提示您重新同步项目 - 请在出现提示时单击Sync now(立即同步)。 -
转到Build(构建)> Rebuild Project(重建项目)。
构建完成后,会显示一条消息: "Gradle build finished"(Gradle构建完成)。 请记下您的程序包名称,因为您稍后在创建安全配置文件时将需要此名称。
示例应用注意事项
您还无法在Fire TV上运行您的应用,因为VSK Agent Client Library仍需要使用与应用的程序包名称关联的API密钥来得到授权。您将在步骤9: 对应用签名并配置安全配置文件中执行该操作。
后续步骤
转到下一步: 步骤4: 决定集成类型。
Last updated: 2020年11月18日