as

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

AudioManager

AudioManager

构造函数

new AudioManager()

new AudioManager(): AudioManager

返回值

AudioManager

方法

allocateCustomAudioEffectSessionAsync()

static allocateCustomAudioEffectSessionAsync(): Promise<number>

为自定义音频效果创建唯一的会话ID。此ID可用于将音频效果与特定播放或录制流相关联。

返回值

Promise<number>

解析为以下项的Promise:

  • 正数: 新的唯一会话ID

通过以下项拒绝:

  • STATUS_NO_MEMORY (-1): 分配会话失败
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

areSystemSoundsEnabledAsync()

static areSystemSoundsEnabledAsync(): Promise<boolean>

检查系统声音当前是否已启用。

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 系统声音已启用
  • false: 系统声音已禁用

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

disableAvrcpAbsoluteVolumeAsync()

static disableAvrcpAbsoluteVolumeAsync(btAddress): Promise<AudioStatus>

禁用蓝牙设备的AVRCP绝对音量控制。禁用后,音量控制由系统处理。需要权限:com.amazon.audio.privilege.settings.control

参数

btAddress

string

蓝牙设备地址

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 地址无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_INVALID_OPERATION (-8): 设备不支持AVRCP
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

disableSystemSoundsAsync()

static disableSystemSoundsAsync(): Promise<AudioStatus>

禁用所有系统声音。在通过enableSystemSoundsAsync重新启用之前,系统声音不会播放。

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失
  • STATUS_INVALID_OPERATION (-8): 操作失败

disableUsageAsync()

static disableUsageAsync(usage): Promise<AudioStatus>

禁用特定使用类型的音频播放。目前仅支持USAGE_NOTIFICATION。需要权限:com.amazon.audio.privilege.settings.control

参数

usage

number

要禁用的使用类型

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 使用类型无效或不受支持
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

enableAvrcpAbsoluteVolumeAsync()

static enableAvrcpAbsoluteVolumeAsync(btAddress): Promise<AudioStatus>

启用蓝牙设备的AVRCP绝对音量控制。启用后,音量控制将由蓝牙设备本身处理。需要权限:com.amazon.audio.privilege.settings.control

参数

btAddress

string

蓝牙设备地址

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 地址无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_INVALID_OPERATION (-8): 设备不支持AVRCP
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

enableSystemSoundsAsync()

static enableSystemSoundsAsync(): Promise<AudioStatus>

禁用系统声音后将其启用。默认情况下,系统声音处于启用状态。

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失
  • STATUS_INVALID_OPERATION (-8): 操作失败

enableUsageAsync()

static enableUsageAsync(usage): Promise<AudioStatus>

为特定使用类型启用音频播放。目前仅支持USAGE_NOTIFICATION。设置其他使用类型时,该函数将引发“[com.amazon.apmf.SecurityError]: No Permission”异常。需要权限:com.amazon.audio.privilege.settings.control

参数

usage

number

要启用的使用类型

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 使用类型无效或不受支持
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getAudioDeviceListAsync()

static getAudioDeviceListAsync(device, role): Promise<AudioDeviceInfo[]>

获取与指定角色匹配的可用音频设备的列表。

参数

device

AudioDevice

筛选依据的设备类型,若是针对所有设备则为DEVICE_ALL。值:

  • DEVICE_NONE (0x0)
  • DEVICE_DEFAULT (1 << 30)
  • DEVICE_SPEAKER (1 << 0)
  • DEVICE_WIRED_HEADSET (1 << 1)
  • DEVICE_BLUETOOTH_SCO (1 << 2)
  • DEVICE_BLUETOOTH_A2DP (1 << 3)
  • 以及其他在AudioDevice枚举中定义的内容
role

AudioRole

筛选依据的角色。值:

  • ROLE_SOURCE (0): 输入设备
  • ROLE_SINK (1): 输出设备
  • ROLE_SOURCE_SINK (2): 输入和输出设备

返回值

Promise<AudioDeviceInfo[]>

可以解析为AudioDeviceInfo对象数组的Promise:

每个对象包含:

  • role: AudioRole
  • type: AudioDevice
  • name: string
  • formats: AudioSampleFormat[]
  • sampleRates: AudioSampleRate[]
  • channelMasks: AudioChannelMask[]

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getGlobalVolumeMuteAsync()

static getGlobalVolumeMuteAsync(): Promise<boolean>

获取当前的全局音量静音状态。

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 全局静音已启用
  • false: 全局静音已禁用

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getMajorVersion()

static getMajorVersion(): number

获取AudioManager的主要版本号。可用于进行版本检查。

返回值

number

主版本号


getMaxVolumeAsync()

static getMaxVolumeAsync(): Promise<number>

获取当前的最大音量限制。

返回值

Promise<number>

解析为以下项的Promise:

  • 0-100: 当前最大音量限制

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getMicMuteAsync()

static getMicMuteAsync(): Promise<boolean>

获取当前麦克风静音状态。

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 麦克风已静音
  • false: 麦克风未静音

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getMinorVersion()

static getMinorVersion(): number

获取AudioManager的次要版本号。可用于进行版本检查。

返回值

number

次版本号


getMuteAsync()

static getMuteAsync(volType): Promise<boolean>

获取特定音量类型的静音状态。需要权限:com.amazon.audio.privilege.settings.control

参数

volType

AudioVolumeType

要查询的音量类型。有关类型的信息,请参见setVolumeAsync

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 音量类型已静音
  • false: 音量类型未静音

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 音量类型无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getPatchVersion()

static getPatchVersion(): number

获取AudioManager的补丁版本号。可用于进行版本检查。

返回值

number

补丁版本号


getSinkFormatsSelectionPolicyAsync()

static getSinkFormatsSelectionPolicyAsync(): Promise<number>

获取当前选择音频输出格式的策略。

返回值

Promise<number>

解析为以下项的Promise:

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getSupportedPlaybackConfigurationsAsync()

static getSupportedPlaybackConfigurationsAsync(attributes, deviceType): Promise<AudioConfigAttr[]>

获取支持使用给定属性和设备进行播放的音频配置。使用它来确定格式、采样率和通道的有效组合。

参数

attributes

AudioAttributes

定义内容类型和使用类型的音频属性

deviceType

number

要查询的设备类型,使用DEVICE_DEFAULT获取当前输出

返回值

Promise<AudioConfigAttr[]>

解析为受支持配置的数组的Promise:

每个配置包含:

  • sampleRate: AudioSampleRate
  • channelMask: AudioChannelMask
  • format: AudioSampleFormat
  • layout: SampleLayout

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_NOT_ENOUGH_DATA (-10): 没有可用的配置
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getSupportedRecordConfigurationsAsync()

static getSupportedRecordConfigurationsAsync(excludeDisconnectedDevice, sourceType): Promise<AudioConfigAttr[]>

获取受支持的录制音频配置。使用此项来确定录制格式、采样率和通道的有效组合。

参数

excludeDisconnectedDevice

boolean

如果为true,则仅返回已连接设备的配置。如果为false,则返回配置文件中所有受支持的配置。

sourceType

number

用于查询配置的音频源类型

返回值

Promise<AudioConfigAttr[]>

解析为受支持配置的数组的Promise:

每个配置包含:

  • sampleRate: AudioSampleRate
  • channelMask: AudioChannelMask
  • format: AudioSampleFormat
  • layout: SampleLayout

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_NOT_ENOUGH_DATA (-10): 没有可用的配置
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getSupportedSinkFormatsSelectionPoliciesAsync()

static getSupportedSinkFormatsSelectionPoliciesAsync(): Promise<SinkPolicies[]>

获取支持的接收器格式选择策略列表。并非所有设备都支持所有策略 - 使用此项来确定可用选项。

返回值

Promise<SinkPolicies[]>

可以解析为受支持策略的数组的Promise:

每个条目包含:

  • 策略:编号(SinkFormatsSelectionPolicy值)

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getSystemSoundThemeAsync()

static getSystemSoundThemeAsync(): Promise<String>

获取当前处于活动状态的系统声音主题。

返回值

Promise<String>

解析为以下项的Promise:

  • 字符串: 当前主题标识符

通过以下项拒绝:

  • STATUS_NO_FILE (-11): 未设置主题
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getSystemSoundThemeListAsync()

static getSystemSoundThemeListAsync(): Promise<AudioTheme[]>

获取所有受支持的系统声音主题的列表。系统声音主题为系统事件定义不同的声音集。

返回值

Promise<AudioTheme[]>

可以解析为AudioTheme对象数组的Promise:

每个对象包含:

  • theme:字符串(主题标识符)

通过以下项拒绝:

  • STATUS_NO_FILE (-11): 未找到主题文件
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getTelephonyMuteAsync()

static getTelephonyMuteAsync(device, address): Promise<boolean>

获取特定设备上电话音频的静音状态。

参数

device

AudioDevice

要查询的设备

address

string

设备的唯一标识符。

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 电话音频已静音
  • false: 电话音频未静音

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_INVALID_OPERATION (-8): 设备未处于电话模式
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

getVolumeAsync()

static getVolumeAsync(type): Promise<number>

获取特定音频类型的当前音量。需要权限:com.amazon.audio.privilege.settings.control

参数

type

AudioVolumeType

要查询的音频类型。有关类型的信息,请参见setVolumeAsync

返回值

Promise<number>

解析为以下项的Promise:

  • 0-100: 当前音量水平
  • STATUS_BAD_VALUE (-2): 类型无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

isAvrcpAbsoluteVolumeEnabledAsync()

static isAvrcpAbsoluteVolumeEnabledAsync(btAddress): Promise<boolean>

检查蓝牙设备是否启用了AVRCP绝对音量控制。

参数

btAddress

string

蓝牙设备地址

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: AVRCP绝对音量已启用
  • false: AVRCP绝对音量已禁用 使用以下项拒绝:
  • STATUS_BAD_VALUE (-2): 地址无效
  • STATUS_INVALID_OPERATION (-8): 设备不支持AVRCP
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

isServerReadyAsync()

static isServerReadyAsync(): Promise<boolean>

检查音频服务器是否准备好处理命令。

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 服务器准备就绪
  • false: 服务器尚未准备就绪

通过以下项拒绝:

  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

已弃用

保留此方法是为了向后兼容,但在将来的版本中可能会被删除。改用registerAudioEventObserverAsync中的SERVER_UP/SERVER_DOWN事件。


isUsageEnabledAsync()

static isUsageEnabledAsync(usage): Promise<boolean>

检查是否为特定使用类型启用了音频播放。

参数

usage

number

要查询的使用类型

返回值

Promise<boolean>

解析为以下项的Promise:

  • true: 使用类型已启用
  • false: 使用类型已禁用

通过以下项拒绝:

  • STATUS_BAD_VALUE (-2): 使用类型无效
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

playSystemSoundAsync()

static playSystemSoundAsync(soundType): Promise<AudioStatus>

播放系统声音。

参数

soundType

AudioSystemSound

要播放的系统声音的类型。值:

  • BOOT_UP (0)
  • BACK_BUTTON (1)
  • HOME_BUTTON (4)
  • MENU_BUTTON (5)
  • UP/DOWN/LEFT/RIGHT (6/9)
  • MIC_ON/OFF (10/11)
  • BLUETOOTH related (12/14)
  • ERROR (15)
  • VOLUME_UP/DOWN (16/17)
  • 以及其他在AudioSystemSound枚举中定义的内容

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 声音类型无效
  • STATUS_NO_FILE (-11): 找不到声音文件
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

registerAudioEventObserverAsync()

static registerAudioEventObserverAsync(callback): Promise<AudioStatus>

注册音频系统事件的回调函数。在全系统范围内一次只能注册一个回调。

参数

callback

(value) => void

接收事件的回调函数:

  • DEVICE_STATE_UPDATE (0): 音频设备连接已更改 参数:{device: AudioDevice, role: AudioRole, connect: boolean}
  • VOLUME_UPDATE (1): 音量已更改 参数:{type: AudioVolumeType, volume: number}
  • GLOBAL_VOLUME_MUTE_UPDATE (2): 全局静音已更改 参数:{mute: boolean}
  • SERVER_DOWN (3): 音频服务器不可用
  • SERVER_UP (4): 音频服务器可用
  • AUDIO_USAGE_STATE_CHANGE (5): 使用状态已更改 参数:{usage: AudioUsageType, active: boolean}
  • MIC_MUTE_STATE_UPDATE (6): 麦克风静音已更改 参数:{muteState: boolean}
  • VOLUME_MUTE_UPDATE (7): 音量类型静音已更改 参数:{volumeType: AudioVolumeType, muteState: boolean}
  • TELEPHONY_MUTE_UPDATE (8): 电话静音已更改 参数:{deviceType: AudioDevice, deviceAddress: string, deviceName: string, muteState: boolean}

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 回调无效
  • STATUS_ALREADY_EXISTS (-4): 回调已注册
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setActiveVolumeAsync()

static setActiveVolumeAsync(volume): Promise<AudioStatus>

设置当前活跃流的音量。活跃流由最新的音频焦点保持器确定。需要权限:com.amazon.audio.privilege.settings.control

参数

volume

number

音量水平 (0-100)。超出此范围的值将被禁止。

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 音量值无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_INVALID_OPERATION (-8): 没有活跃流
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setGlobalVolumeMuteAsync()

static setGlobalVolumeMuteAsync(mute, flags): Promise<AudioStatus>

设置全局音量静音状态。启用后,无论单个音量设置如何,都会将所有音频输出静音。需要权限:com.amazon.audio.privilege.settings.control

参数

mute

boolean

为true时表示启用全局静音,为false时表示禁用

flags

AudioVolumeFlags = AudioVolumeFlags.VOLUME_FLAG_NONE

影响静音行为的可选标记:

  • VOLUME_FLAG_NONE (0): 没有特殊行为
  • VOLUME_FLAG_SHOW_UI (1): 显示静音状态用户界面
  • VOLUME_FLAG_PLAY_NOTIFICATION (2): 播放状态变更声音

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失
  • STATUS_INVALID_OPERATION (-8): 操作失败

setMaxVolumeAsync()

static setMaxVolumeAsync(maxVolume): Promise<AudioStatus>

设置所有音频类型的最大音量限制。这充当全局音量上限,影响所有音量类型。需要权限:com.amazon.audio.privilege.settings.control

参数

maxVolume

number

最大音量水平 (0-100)。超出此范围的值将被禁止。当前超出此限制的音量将减小以符合限制。

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 音量值无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setMicMuteAsync()

static setMicMuteAsync(mute): Promise<AudioStatus>

设置麦克风静音状态。这会影响源自麦克风的所有音频记录。

参数

mute

boolean

为true时表示将麦克风静音,为false时表示取消静音

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失
  • STATUS_INVALID_OPERATION (-8): 操作失败

setMuteAsync()

static setMuteAsync(volType, mute): Promise<AudioStatus>

设置特定音量类型的静音状态。将音量类型设为静音会使该类型的所有音频流静音。需要权限:com.amazon.audio.privilege.settings.control

参数

volType

AudioVolumeType

将音量类型设置为静音/取消静音。有关类型的信息,请参见setVolumeAsync

mute

boolean

为true时表示静音,为false时表示取消静音

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 音量类型无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setSinkFormatsSelectionPolicyAsync()

static setSinkFormatsSelectionPolicyAsync(policy): Promise<AudioStatus>

设置在HDMI/数字输出上选择音频输出格式的策略。这会影响音频在发送到支持设备时的编码方式。

参数

policy

SinkFormatsSelectionPolicy

格式选择策略:

  • AUTO (0): 根据接收器能力进行选择
  • ENFORCE_PCM (1): 强制PCM输出
  • PASSTHROUGH_DDP (2): 允许Dolby Digital Plus直通
  • PASSTHROUGH_DD (3): 允许Dolby Digital直通
  • ENFORCE_DDP (4): 强制使用Dolby Digital Plus编码
  • ENFORCE_DD (5): 强制使用Dolby Digital编码

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 策略无效
  • STATUS_INVALID_OPERATION (-8): 不支持的策略
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setSystemSoundThemeAsync()

static setSystemSoundThemeAsync(soundTheme): Promise<AudioStatus>

设置当前系统声音主题。该主题必须是getSystemSoundThemeListAsync返回的主题之一。

参数

soundTheme

string

主题标识符字符串

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 主题无效
  • STATUS_NO_FILE (-11): 未找到主题文件
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setTelephonyMuteAsync()

static setTelephonyMuteAsync(device, address, mute): Promise<AudioStatus>

设置特定设备上电话音频的静音状态。

参数

device

AudioDevice

用于设置静音状态的设备

address

string

设备的唯一标识符。

mute

boolean

为true时表示静音,为false时表示取消静音

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_INVALID_OPERATION (-8): 设备未处于电话模式
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

setVolumeAsync()

static setVolumeAsync(type, volume, flags): Promise<AudioStatus>

设置特定音频类型的音量。需要权限:com.amazon.audio.privilege.settings.control

参数

type

AudioVolumeType

要调整的音频类型:

  • VOLUME_TYPE_DEFAULT (-1)
  • VOLUME_TYPE_MEDIA (0)
  • VOLUME_TYPE_VOICE_ASSISTANT (1)
  • VOLUME_TYPE_VOICE_CALL (2)
  • VOLUME_TYPE_RING (3)
  • VOLUME_TYPE_ALARM (4)
  • VOLUME_TYPE_NOTIFICATION (5)
  • VOLUME_TYPE_ACCESSIBILITY (6)
  • VOLUME_TYPE_SYSTEM (7)
  • VOLUME_TYPE_NAVIGATION (8)
volume

number

音量水平 (0-100)。超出此范围的值将被禁止。

flags

AudioVolumeFlags = AudioVolumeFlags.VOLUME_FLAG_NONE

影响音量变化行为的可选标记:

  • VOLUME_FLAG_NONE (0): 没有特殊行为
  • VOLUME_FLAG_SHOW_UI (1): 显示音量滑块用户界面
  • VOLUME_FLAG_PLAY_NOTIFICATION (2): 播放音量变化的声音

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 类型或音量无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

startTelephonyAsync()

static startTelephonyAsync(device, address, mode): Promise<AudioStatus>

从指定设备开始电话呼叫

客户端只需指定设备DEVICE_DEFAULT即可让音频服务器确定电话并发起呼叫。在某些特定平台上,可以支持多个电话来源,例如HFP设备、语音呼叫调制解调器等。在这种情况下,客户端实际上可以使用getAudioDeviceListAsync API查询设备列表,然后选择特定的设备和相应的地址。

参数

device

AudioDevice

用于电话音频的设备。常用值为:

  • DEVICE_DEFAULT (1 << 30)
  • DEVICE_BLUETOOTH_SCO (1 << 2)
  • DEVICE_BLUETOOTH_HFP (1 << 18)
  • DEVICE_WIRED_HEADSET (1 << 1)
address

string

设备的唯一标识符(例如,蓝牙地址)

mode

AudioTelephonyMode

电话音频模式:

  • MODE_NARROW_BAND (0): 标准语音质量
  • MODE_WIDE_BAND (1): 高清语音质量

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_INVALID_OPERATION (-8): 无可用的设备
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

stopTelephonyAsync()

static stopTelephonyAsync(device, address): Promise<AudioStatus>

停止指定设备上的电话音频。必须在通话结束或不再需要电话音频时呼叫。

参数

device

AudioDevice

停止开启电话音频的设备

address

string

设备的唯一标识符(例如,蓝牙地址)

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_INVALID_OPERATION (-8): 电话未激活
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

unregisterAudioEventObserverAsync()

static unregisterAudioEventObserverAsync(): Promise<AudioStatus>

取消注册之前注册的音频事件回调。

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_INVALID_OPERATION (-8): 未注册任何回调
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

updateActiveVolumeAsync()

static updateActiveVolumeAsync(update, fallbackType): Promise<AudioStatus>

通过递增或递减来更新活动流的音量。如果没有流处于活动状态,则调整指定回退类型的音量。需要权限:com.amazon.audio.privilege.settings.control

参数

update

number

更新类型:

  • UP (0): 逐步增大音量
  • DOWN (1): 将音量降低一个步幅
fallbackType

AudioVolumeType

没有活跃流时要调整的音量类型

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

updateVolumeAsync()

static updateVolumeAsync(type, volume): Promise<AudioStatus>

通过递增或递减来更新特定音频类型的音量。需要权限:com.amazon.audio.privilege.settings.control

参数

type

AudioVolumeType

要调整的音频类型。有关类型的信息,请参见setVolumeAsync

volume

number

更新类型:

  • UP (0): 逐步增大音量
  • DOWN (1): 将音量降低一个步幅

返回值

Promise<AudioStatus>

解析为以下项的Promise:

  • STATUS_NO_ERROR (0): 成功
  • STATUS_BAD_VALUE (-2): 参数无效
  • STATUS_PERMISSION_DENIED (-9): 缺少权限
  • STATUS_DEAD_OBJECT (-5): 服务器连接丢失

Last updated: 2025年10月2日