as

Settings
Sign out
Notifications
Alexa
亚马逊应用商店
Ring
AWS
文档
Support
Contact Us
My Cases
新手入门
设计和开发
应用发布
参考
支持

Vega SDK发布说明

Vega SDK发布说明

请在此处为您的Vega SDK使用体验评分(仅提供英文版)。

参加调查,分享您的反馈。

Vega SDK版本0.21

Vega SDK v0.21引入了重大更改和改进。主要亮点包括:

  1. Vega虚拟设备 (VVD): 更改了名称,不再称为“Simulator”(模拟器),具有改进的用户界面 (UI)、Fire TV Stick遥控功能的键盘控制以及更好的错误处理能力。
  2. 遥测框架: 涵盖所有Vega工具的全面文档,包括默认启用的遥测和简化的选择退出程序。增强的隐私声明和Visual Studio Code (VS Code) 集成。
  3. 开发者工具: 增加了对Ubuntu 24的支持。Vega Studio现已在VS Code市场发布。实施了改进的错误消息系统。
  4. 性能分析: 具有预建性能检查的新ESLint插件、用于系统跟踪分析的Perfetto用户界面集成,以及用于数据可视化的自定义文件类型编辑器。
  5. 新的性能KPI: 实现了视频/用户界面丢帧跟踪和应用事件响应时间测量,包括滚动的输入键延迟和连续丢帧计数。
  6. 开发者体验: 通过实时反馈、更好的错误消息传递和简化的开发工作流程改进了清单验证。

身份验证通过Login with Amazon流程有所改进,解决了多个视频播放和字幕相关问题,解决了流冻结、插播广告过渡效果更好并且字幕定位问题有所改善。

通过修复关键服务注册处理、计时器管理和资源冲突,提高了系统稳定性。这些改进带来更强大、更稳健的开发和用户体验。

此版本要求在Vega Fire TV Stick上安装OS 1.1 (1001010443450),其与Vega SDK v0.21兼容。您可以导航到My Fire TV(我的Fire TV)> About(关于)来查看您的设备软件版本。

公告

Vega私有NPM程序包移至公共注册表

Vega NPM程序包从私有注册表迁移到了公共NPM注册表,从@amzn命名空间过渡到@amazon-devices命名空间。实施此项变更后,不再需要令牌并简化了开发。

此举的主要益处

  • 简化开发: 开发者不再需要为Vega开发配置.npmrc令牌。
  • 改善了库的可用性: 通过公共注册表可以更轻松地访问亚马逊提供的SDK。
  • 简化了命名空间: 暂时仍会使用两个命名空间,但是@amzn将停用以供外部使用。

在Github上提供示例参考应用

示例应用已开始转移到亚马逊的Github空间,可供直接下载,无需访问令牌即可访问。

Vega虚拟设备 (VVD) 增强功能

Vega SDK v0.21引入了对Vega虚拟设备 (VVD) 和Vega CLI (VCLI) 的改进。您现在可获得简化的命令、改进的用户体验、更新的Vega Studio扩展、新的键盘控件和改进的错误处理。

名称和命令更新

Vega虚拟设备标识符现在是VirtualDevice,取代了所有工具和接口上的Simulator标识符。对Simulator标识符的支持将于2025年11月结束。在此更改生效之前,开始使用VirtualDevice

VVD用户界面更新

VVD界面经过重新设计,可提供:

  • 明确的说明,即注册是可选的,除非您使用的是亚马逊服务。
  • 一致的样式(颜色、间距和排版)。
  • 有用的工具提示和信息元素,以提高可用性。

Vega Studio扩展更新

  • 在命令面板中,将名称Simulator更改为Vega Virtual Device(Vega虚拟设备)。
  • 在“Devices”(设备)部分中,将Simulator:TV更改为VirtualDevice:Tv

新的键盘控件

向Vega虚拟设备添加了键盘映射功能,让您可以使用键盘快捷键控制Fire TV Stick的遥控功能。有关详细信息,请参阅Vega虚拟设备文档。

改进了错误处理

当设备相关操作失败时,通用结果代码更改为详细的错误消息,从而帮助您诊断和解决问题。

遥测文档更新

更新了遥测收集和支持文档,提高了Vega工具中数据收集的透明度并加强了控制。

关键更新:

  • 所有Vega工具的遥测收集的详细分类。这些工具包括Vega Studio、Vega CLI、Vega 虚拟设备、Vega Performance CLI和Vega Appium驱动程序。
  • 简化了开发者的退出流程。

重要更改:

  • 现在,Vega SDK中默认启用遥测功能。
  • {$KEPLER_SDK_PATH}/state/kepler-telemetry/config.json中提供新的配置选项。
  • 改进了隐私声明和数据使用说明。
  • 与Vega Studio用户的VS Code遥测设置集成。

有关详细信息,请参阅在Vega工具中管理遥测

此次更新反映了亚马逊对遥测收集的透明度和开发者选择的承诺,同时改善了Vega的开发体验。

Vega网页应用更新

对于WebView开发者而言,必须修改package.json文件。有关详细信息,请参阅Vega网页应用依赖项更新

开发者工具

Vega v0.21引入了以下Vega开发者工具改进:

  • 向Vega虚拟设备添加了Ubuntu 24支持。
  • 将Vega Studio添加到VS Code市场中。
  • 添加了ESLint插件。ESLint插件在Vega Studio工具(CLI和UI)中使用预先构建的性能检查。这些检查会自动检测常见的代码级问题,例如FlatList的使用情况、缺少启动画面或console.logs。检查项分为必须完成项(错误)和可选完成项(警告)两类。开发者可以提交测试证明,并在应用提交期间向亚马逊应用商店团队确认其已通过必要测试。
  • 添加了新的性能监控KPI。这些KPI包括实现视频/用户界面丢帧跟踪和应用事件响应时间测量,以更好地评估播放流畅度和交互响应能力。
    • 3帧以上和5帧以上视频连续掉帧: 此功能统计应用在视频播放期间连续丢失5帧或更多帧的情况,这表明播放出现严重中断。
    • 用户界面5帧以上连续掉帧: 此功能统计应用在滚动交互期间连续丢失5帧或更多帧从而导致用户界面严重卡顿的情况。例如,当垂直或水平滚动时。
    • 应用事件响应时间 - 焦点: 此功能衡量焦点事件 (onFocus/onBlur) 的原生用户界面线程和JavaScript线程之间的调度延迟。超过200毫秒的调度延迟表明JavaScript线程拥塞,这会影响应用的响应能力。
  • 添加了输入键延迟(滚动)跟踪KPI衡量,以改善应用流畅度评估。
  • 为特定文件类型添加了自定义编辑器,使开发者能够通过在IDE中双击文件来可视化数据。
  • 增加了改进的错误消息系统。此系统为环境设置问题提供可操作的详细反馈,使开发者能够使用CLI和Vega Studio性能工具独立进行故障排除。
  • 添加了改进的Vega清单验证。这种针对Vega manifest.toml文件的实时验证可直接在VS Code中提供有关错误和格式设定问题的即时反馈。
  • 作为性能扩展的一部分,直接在Vega Studio中集成了Perfetto用户界面。Perfetto用户界面支持一键访问系统跟踪分析,无需额外的设置,类似于现有的Chrome DevTools集成。

Vega网页应用依赖项更新

如果您使用WebView开发应用,请修改您的应用的package.json文件以包含以下依赖项。

已复制到剪贴板。

"dependencies": {
    "@amzn/webview": "^3.0.0",
    --------------------
},

要安装应用依赖项,请运行以下命令。

已复制到剪贴板。

npm install

有关更多信息,请参阅Vega网页应用概述

开发者库

  • 开发者库移植指南: 添加了开发者库移植指南。现在,在为您的库添加Vega支持时,可以向库开发人员提供详细的意见。

改进

  • 添加了错误报告工具,用于收集有关系统、设备和日志的诊断信息。该工具将此类信息以文件形式保存在您的计算机上,您可以在提交支持问题单时附上该文件。有关详细信息,请参阅设置和使用Vega Studio
  • 添加了以下Appium命令:push_filepull_fileinstall_appactivate_appterminate_app以及remove_app。有关描述和用法,请参阅Appium命令
  • 在调试流程中添加了应用程序无响应 (ARN) 超时管理。这种管理可以防止生命周期管理器 (LCM) 在逐行原生调试会话中终止应用。
  • 改进了字幕窗口的定位和边框边距内的文本对齐方式。改进了垂直堆叠逻辑和行调整计算,以防止文本重叠和边框粘连。
  • 通过改进同意页面显示和视觉缩放,改善了电视操作系统上的Login with Amazon (LWA) 体验。用户现在可以在电视屏幕上享受更好的可读性和更易于访问的身份验证体验。
  • 修复了在设备上启用家长监护时与Login with Amazon (LWA) 流程相关的身份验证失败问题。
  • 通过解决适用于Vega的React Native Thread Monitor中断的互斥锁问题,修复了界面线程挂起的问题。该锁导致平台数据管理器出现死锁问题。
  • 通过解决堆栈导航器的动画问题,修复了应用导航崩溃的问题。不再需要禁用动画 (animationEnabled: false) 作为解决方法。
  • 修复了TimingModule问题,即由于在ArnTimer中重复使用句柄,ClearInterval偶尔会清除错误的计时器。该修复解决了计时器管理的竞争状况和孤立的setInterval实例。
  • 修复了在应用中导航主页磁贴时用户界面闪烁的问题,提供流畅的过渡而不会出现视觉伪影。
  • 修复了在视频点播 (VOD) 内容播放期间启用字幕时发生的应用崩溃问题。
  • 通过解决媒体播放器取消初始化期间死锁导致的应用无响应 (ANR) 问题,修复了插播广告后视频冻结的问题。
  • 通过移除多余的配置替代项修复了视频流的冻结问题。更正了轨道缓冲区寻道逻辑,以便在回放期间正确处理间隙。
  • 通过在字幕轨道管理中添加同步来防止争用情况,修复了内容播放期间应用崩溃的问题。
  • 通过在解除绑定操作失败期间保留待处理的连接,修复了ServiceRegistrar连接处理问题。对过时的连接实施了超时管理,从而提供了适当的服务恢复。
  • 通过解决资源管理冲突修复了音乐播放问题。以前,LCM错误地终止了地图服务。改善了资源管理器和生命周期管理器之间的协作,以防服务过早终止。
  • 修复了升级到React Native w3cmedia程序包版本2.1.80后在视频播放期间出现的绿屏伪影。
  • 修复了开启电视时出现的黑屏问题。问题发生在应用之间切换和关闭应用之后。提供了正确的应用状态恢复和启动程序可见性。
  • 通过解决稳定性问题,修复了播放扩展HLS内容时发生的应用崩溃问题
  • 通过在为文本显示自动计算窗口大小时删除不必要的窗口内边距,修复了标题文本剪切问题。
  • 修复了应用中使用的媒体控制按钮无法正常工作的问题。
  • 修复了消息路由器命令与enforce-security命令同时运行之际播放VOD内容时发生应用崩溃的问题。
  • 修复了开始/结束时间相同的字幕提示的应用中字幕对齐和缺失文本问题。

已知问题

  • 二进制形式的性能工具不能在最新Ubuntu操作系统版本(22、24)上正常工作。

    解决方法: 联系您的亚马逊联系人或在论坛中提问以获取zip文件和安装程序脚本。该文件和脚本可用于在Ubuntu设备上使用Python源代码运行性能池。

  • 通过Vega Studio启动时,Activity Monitor不显示调试变体应用的常用函数。

    解决方法: 通过VLCM命令启动应用,观察常用函数:

    已复制到剪贴板。

    vlcm launch-app orpheus://<应用URL>
    
  • 由于映射迭代器争用状况,应用可能会在视频长时间播放(1-2小时)期间崩溃。
  • 尽管调试内部版本可以正常运行,但在使用react-navigation核心时,React Navigation主题背景在发布内部版本中默认为白色。
  • 在非登录状态下,在广告播放过渡期间,应用可能会遭遇内存不足终止 (LMK)
  • Shaka播放器在使用右方向键导航搜索到视频结尾时可能会停滞。
  • 使用BackHandler.exitApp() 然后快速重新启动应用会导致发布内部版本崩溃,或者在调试模式下出现Cannot initialize hmrClient twice(无法初始化hmrClient两次)错误。
  • 应用可能在不显示启动画面的情况下启动,从而影响应用启动期间的用户体验。根本原因仍然未知。
  • JSON RPC响应中的焦点属性层次结构与实际聚焦的元素不一致,影响了Appium选择器功能。
  • 在直播TV广播期间,隐藏式字幕使用实时生成的字幕间歇性地闪烁并改变位置,从而影响可读性。
  • stopstatus操作在Ubuntu系统上的Vega虚拟设备 (VVD) 中无法正常运行。这意味着用户无法使用标准CLI命令或Vega Studio停止VVD。

    解决方法: 右键单击VVD应用图标并选择“close”(关闭)或VVD用户界面中的“x”按钮。

  • 当某些USB集线器或扩展坞连接到主机时,虚拟设备可能会在启动后意外终止。

    解决方法:

    1. 断开所有USB集线器与主机的连接。
    2. 断开所有扩展坞与主机的连接。
    3. 重新启动虚拟设备。
  • Ubuntu上的性能工具兼容性。Perf CLI二进制文件可能无法在Ubuntu系统上正常运行。遇到问题的用户应使用提供的补丁Bundle作为解决方法。

    解决方法:

    1. 下载补丁Bundle并安装脚本
    2. 运行以下命令。

      已复制到剪贴板。

       sudo chmod +x install_bundle.sh && ./install_bundle.sh
      
    3. 该脚本将软件包安装到您的 SDK 中。

Last updated: 2026年3月9日