as

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

IChannelLineupProvider

IChannelLineupProvider

用于替换EPG内频道列表的数据提供商对象。

详情

该提供商用于将EPG内的所有频道设置/替换为一组全新的频道。使用不同频道列表多次调用add() 函数,可创建一组新频道,然后在最终调用commit() 函数时,用这组新频道替换EPG以前的所有频道。如果在调用commit() 之前销毁提供商对象,则队伍中的所有变更都将丢失。请注意,此接口并非线程安全。请勿出于应用于不同线程之目的为该对象创建多个实例,以免发生不确定行为。如果此对象的任一方法已出现错误,请弃用此对象并创建一个新实例。

方法

add()

add(channels): Promise<void>

将频道列表添加到提交队列。

参数

channels

IChannelInfo[]

要插入的频道数组。

返回值

Promise<void>

详情

该函数可调用一次或多次,从而为EPG添加频道数据。引入数据将仅在调用commit() 函数时提交。

抛出

如果在同一个IChannelLineupProvider的任一方法已抛出错误后继续调用该函数,则出现IllegalStateError。

抛出

如果提供的频道全都无效,则抛出InvalidArgumentError。错误消息将包括插入失败的总数和前5个失败频道的原因。错误消息示例请参阅开发者指南。

抛出

如果该函数遇到不可恢复的错误(如数据存储连接问题等),则抛出InternalError。错误消息将包含失败的频道以及导致失败的错误。

抛出

如果该函数遇到因引入的数据超过存储限制导致的错误,则抛出StorageLimitError。如果您遇到此错误,请咨询您的亚马逊联系人。


commit()

commit(version): Promise<void>

将现有频道数据替换为添加到提交队列中的待处理频道数据。

参数

version

string

表示正在提交的频道时间表版本的字符串。

返回值

Promise<void>

详情

在使用add() 函数将所有数据添加到提交队列后,应调用该函数。在提交提供商后,所有既有频道将从数据存储中移除,并替换为添加到该提供商对象的所有频道。调用成功后,EpgLineupInformation.getLastCommittedChannelLineupVersion()将开始返回该版本值。

抛出

如果在提供商采用的某种方法抛出错误后继续调用该函数,则抛出IllegalStateError

抛出

如果数据无法提交到数据存储,则抛出InternalError


Last updated: 2025年9月30日