【HMS core】【FAQ】典型问题合集8
1、【HMS core】【音频编辑服务】【问题描述】
音频编辑原子能力SDK,在调用删除音频(audioLane.removeAsset(index))时只是删除了声音时长未变,如何实现删除时不留有空白时长?如何实现撤销此操作?
【解决方案】
1、留有空白时长的原因是因为音频编辑SDK支持多音轨编辑
当用户对某条音轨中的片段删除后,可能需要播放其他音轨的内容,因此在删除后,留了空白时长,我们会在下一版本提供不留空白时长的删除方法,建议关注一下版本更新说明
当前可以参考如下代码进行操作:
// deletedIndex是被删除的Asset的编号。
// duration是指被删除音频片段的时长
// 在删除Asset后调用如下方法
long tempTime;
while (deletedIndex < audioLane.getAssets().size()) {
haeAsset = audioLane.getAssets().get(deletedIndex);
tempTime = haeAsset.getStartTime();
haeAsset.setStartTime(tempTime-duration);
tempTime = haeAsset.getEndTime();
haeAsset.setEndTime(tempTime-duration);
deletedIndex++;
}
2、可以调用下面的方法进行实现:
撤销:HistroyManager.undo(HistoryCallback historyCallback)
重做:HistroyManager.redo(HistoryCallback historyCallback)
示例:
HistoryManager.getInstance().undo(new HistoryCallback() {
@Override
public void success(String actionName) {
// ActionName常量请见com.huawei.hms.audioeditor.sdk.history.impl.ActionName
// ActionName.CHANGE_AUDIO_SPEED_ACTION_NAME
Log.d(TAG, "success: "+actionName);
}
@Override
public void onFailed() {
Log.d(TAG, "onFailed: ");
}
});
2、【HMS core】【推送服务】【问题描述】
hms_Privacy_MY_{包名}.xml中的PrivacyData字段是什么场景使用的,是密钥吗?
【解决方案】
这是打点的缓存数据,没有安全风险
3、【HMS core】【推送服务】【问题描述】
华为sdk里面的推送集成是在app启动的时候就会初始化吗?如收集Android ID个人信息的行为。
【解决方案】
在用户授权同意隐私政策前,华为sdk没有类似的初始化行为
欲了解更多更全技术文章,欢迎访问https://developer.huawei.com/consumer/cn/forum/?ha_source=zzh
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 25岁的心里话
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 按钮权限的设计及实现