Power Apps 中的 麦克风 控件
允许应用用户从其设备录音的控件。
描述
使用麦克风控件可以使用设备的麦克风捕获音频。 该设备必须有麦克风,并且用户必须授权应用使用麦克风。
最近录制的音频剪辑可通过 音频 属性获得。 使用此属性,录制的音频可以:
- 使用 音频 控件回放。 使用 音频 控件收听录音。 有关详细信息,请参阅示例。
- 临时放置在变量或集合中。 使用 Set 或 Collect 函数将音频剪辑存储在变量或集合中。 在设备的内存有限的情况下,请谨慎使用集合中的多个音频剪辑。 使用 SaveData 和 LoadData 函数将音频剪辑移至设备上的本地存储,用于脱机场景。
- 存储在数据库中。 使用 Patch 函数将音频剪辑存储在数据库中。
- 作为 base64 编码的文本字符串传输。 使用 JSON 函数对音频剪辑进行 base64 编码。
所录制音频的格式:
- Android 为 3gp 格式。
- iOS 为 AAC 格式。
- Web 浏览器为 OGG 格式。
捕获的媒体由文本字符串 URI 引用。 有关详细信息,请阅读数据类型文档。
备注
只有基于 Chromium、Chrome 和 Firefox 浏览器的 Microsoft Edge 和 Android 与 iOS 设备中才支持 麦克风 控件。 所有其他浏览器和平台将显示警告,提示应用的某些功能无法使用。
限制
麦克风控件具有以下限制:
- Power Apps Mobile 可在各种类型的设备上运行,其中某些设备具有特定于该平台的限制:
- 可在除 iPhone 设备之外的所有平台上同时在多个视频控件中播放视频。
- 可在除 Web 播放器之外的所有平台上同时使用多个麦克风控件录制音频。
键属性
音频 – 用户使用设备的麦克风录制时捕获的音频剪辑。
Mic – 有多个麦克风的设备上的麦克风的数字 ID。
OnStop – 当用户停止使用 麦克风 控件录制时要执行的操作。
其他属性
AccessibleLabel – 屏幕阅读器标签。 应描述麦克风的用途。
BorderColor – 控件边框的颜色。
BorderStyle – 控件边框是 Solid、Dashed、Dotted 还是 None。
BorderThickness – 控件边框的粗细。
Color – 控件中文本的颜色。
DisplayMode – 此控件是允许用户输入 (Edit)、仅显示数据 (View),还是已禁用 (Disabled)。
DisabledBorderColor – 控件的 DisplayMode 属性设置为 Disabled 时,该控件边框的颜色。
DisabledColor – 控件的 DisplayMode 属性设置为 Disabled 时,该控件中的文本颜色。
DisabledFill – 控件的 DisplayMode 属性设置为 Disabled 时,该控件的背景色。
Fill – 控件的背景色。
FocusedBorderColor – 当聚焦到控件时,控件的边框颜色。
FocusedBorderThickness – 当聚焦到控件时,控件的边框粗细。
Height – 控件上边缘和下边缘之间的距离。
HoverBorderColor – 用户将鼠标指针停留在控件上时,该控件边框的颜色。
HoverColor – 用户将鼠标指针停留在控件上时,该控件中的文本颜色。
HoverFill – 用户将鼠标指针停留在控件上时,该控件的背景色。
图像 – 在 图像、音频 或 麦克风 控件中显示的图像名称。
ImagePosition – 屏幕或控件大小与图像大小不同时,其中图像的位置(Fill、Fit、Stretch、Tile 或 Center)。
OnSelect – 当用户选择控件时要执行的操作。
OnStart – 当用户开始使用 麦克风 控件录制时要执行的操作。
PressedBorderColor – 用户选择控件时,该控件边框的颜色。
PressedColor – 用户选择控件时,该控件中文本的颜色。
PressedFill – 用户选择控件时,该控件的背景色。
Reset – 控件是否还原为其默认值。
TabIndex – 相对于其他控件的键盘导航顺序。
Tooltip – 用户将鼠标悬停在控件上时显示的解释性文本。
Visible – 控件显示还是隐藏。
Width – 控件左边缘和右边缘之间的距离。
X – 控件左边缘与其父容器或屏幕左边缘之间的距离。
Y – 控件上边缘与其父容器或屏幕上边缘之间的距离。
示例
简单的直接播放
在此示例中,我们将直接将麦克风控件与音频控件连接以立即播放:
将一个麦克风控件添加到您的应用。
如果出现提示,授权应用使用设备的麦克风。
将一个音频控件添加到您的应用。
将音频控件的 Media 属性设置为以下公式:
Microphone1.Audio
备注
根据需要替换 麦克风 控件名称 Microphone1。
预览应用。
选择麦克风控件开始录制。
讲话以录制音频。
再次选择麦克风控件结束录制。
选择音频控件收听录音。
将声音添加到 库 控件
在此示例中,我们将创建一个音频剪辑库,它存储在一个集合中,可以单独选择进行播放:
添加一个麦克风控件。
使用 Collect 函数将其 OnStop 属性设置为此公式:
Collect( MySounds, MyMic.Audio )
添加一个 库 控件,将其移到 MyMic 下面。
将库的 Items 属性设置为以下公式:
MySounds
在 Custom gallery 控件的模板中,添加 音频 控件。
将 音频 控件的 Media 属性设置为以下公式:
ThisItem.Url
按 F5 预览应用。
选择 MyMic 开始录制,然后再次选择停止录制。
在 库 控件中,选择音频控件中的播放按钮播放录制的内容。
根据需要添加多个录制内容,然后按 Esc 键返回到默认工作区。
(可选)在 库 控件的模板中,添加 按钮 控件。
将其 OnSelect 属性设置为此公式:
Remove( MySounds, ThisItem )
按 F5,然后通过选择相应的 按钮 控件来移除录音。
使用 SaveData 函数在本地保存录音,或使用 Patch 函数更新数据源。
辅助功能准则
适用 按钮 的相同准则,因为麦克风是专用按钮。 另外,请考虑以下事项:
音频替代项
请考虑为有语言障碍或没有麦克风的用户添加另一种输入形式。 例如,文本输入,允许用户输入文本。
颜色对比度
屏幕阅读器支持
- AccessibleLabel 必须存在。