更新时间:2026-05-22 GMT+08:00
分享

音频监控回调

方法名称

void onMonitorAudio(AppOperateResponse<MediaMonitorData> appOperateResponse)

功能描述

音频监控回调。该方法在音频监控数据更新时触发。

参数说明

字段名

类型

说明

appOperateResponse

AppOperateResponse

操作响应对象

回调参数

字段

类型

说明

error_code

String

状态码,0表示成功

error_msg

String

错误详情

result_data

JsonObject

媒体信息

MediaMonitorData对象,包含以下字段:

字段名

类型

说明

metadataKeyTitle

String

歌曲名称

metadataKeyArtist

String

歌手名称

metadataKeyAlbum

String

专辑名称

metadataKeyAlbumArtist

String

专辑歌手

metadataKeyAlbumCover

String

专辑封面,通常为图片URL或Base64编码字符串

metadataKeyDuration

Integer

歌曲时长,单位:毫秒

isPlaying

Boolean

音频是否正在播放

  • true:播放中
  • false:暂停

packageName

String

提供音频播放服务的应用包名

返回值

调用示例

// 设置音频监听回调
CloudPhoneClient.setAppCallback(new CloudPhoneClient.Callback.AppCallback() {
@Override
public void onMonitorAudio(AppOperateResponse<MediaMonitorData> response) {
if (response.isSuccess() && response.getData() != null) {
MediaMonitorData monitorData = response.getData();
// 处理监听得到的音频信息
String title = monitorData.getMetadataKeyTitle();
boolean isPlaying = monitorData.getIsPlaying();
String albumCover = monitorData.getMetadataKeyAlbumCover();
// ...其他字段处理
} else {
// 处理回调失败情况
String errorMsg = response.getErrorMsg();
}
}


// 其他回调方法...
});

响应示例

当音频状态或元数据发生变化时,参数中的response.getData()内容如下:

response.getData()
返回示例:
{
"metadataKeyTitle": "Perfect",
"metadataKeyArtist": "Ed Sheeran",
"metadataKeyAlbum": "÷ (Divide)",
"metadataKeyAlbumArtist": "Ed Sheeran",
"metadataKeyAlbumCover": "https://example.com/covers/ed_sheeran_divide.jpg",
"metadataKeyDuration": 263000,
"isPlaying": true,
"packageName": "com.example.musicplayer"
}

相关文档