as

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

IPlayerClientFactory

IPlayerClientFactory

提供Kepler播放器客户端实例的组件。

方法

getOrMakeClient()

getOrMakeClient(serviceComponentId): IPlayerClient

获取或创建Kepler播放器客户端的实例。

参数

serviceComponentId

string

是服务组件的componentID,应用将启动该组件以在服务中托管播放会话。示例:serviceComponentID: "com.x.y.z.headlessservice"

返回值

IPlayerClient

Kepler播放器客户端实例。

示例

// 用法示例

import {PlayerClientFactory, IPlayerClient} from '@amazon-devices/kepler-player-client';
import {PackageInfo, PackageManager} from '@amazon-devices/package-manager-lib';

const parseClientPackageManifest = async (): Promise<string> => {
  try {
    const selfPackageInfo: PackageInfo =
      await PackageManager.getSelfPackageInfo();
    for (const component of selfPackageInfo.components) {
      if (component.type === 'service') {
        return component.id;
      }
    }
    return '';
  } catch (error) {
    console.warn(
      `交互: 无法从程序包管理器中检索信息,${error.message}`,
    );
    return '';
  }
};

const playerClientRef = useRef<IPlayerClient | null>(null);
const playerClientFactory = new PlayerClientFactory();
let serviceComponentId: string | undefined =
  await this.parseClientPackageManifest();

if (playerClientRef.current == null) {
  playerClientRef.current =
    playerClientFactory.getOrMakeClient(serviceComponentId);
}

Last updated: 2025年10月2日