反复录音 HarmonyOS 鸿蒙Next

发布于 1周前 作者 zlyuanteng 来自 鸿蒙OS

反复录音 HarmonyOS 鸿蒙Next

我这边需要将文本用 gzip 方式压缩,在咱的文档中找到有关 gzip 相关的接口,都是基于文件操作的。请问有没有什么办法可以获取一个字符串的 gzip 后的 arrayBuffer 或者 string?我看网上有提到 pako,暂时不想为了一个方法引入第三方库。da’shen帮忙看看我这种方法对接口的理解是正确的吗?

async function compress(string) {
  const rootDir = TXFileManager.getDirectoryPath(TXFileType.mixed)
  let tempGZipFilePath = rootDir + "/tempGZip.gz"
  let gzip = zlib.createGZipSync()
  await gzip.gzopen(tempGZipFilePath, "wb")
  let r = await gzip.gzputs(string)
  await gzip.gzclose()
  let file = fs.openSync(tempGZipFilePath, fs.OpenMode.READ_ONLY)
  let bufferSize = fs.statSync(file.fd).size
  let buffer = new ArrayBuffer(bufferSize)
  fs.readSync(file.fd, buffer)
  let decoder = util.TextDecoder.create("utf-8")
  let result = decoder.decodeToString(new Uint8Array(buffer))
  return result
}

更多关于反复录音 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html

2 回复

1、目前没有现有的api实现gzip,推荐gzip可以参考三方js库pako,参考文档:

https://gitee.com/openharmony-tpc/openharmony_tpc_samples/tree/master/pakoDemo

2、接口理解基本没有问题

更多关于反复录音 HarmonyOS 鸿蒙Next的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


针对“反复录音 HarmonyOS 鸿蒙Next”这一问题,以下提供直接相关的专业回答:

在HarmonyOS鸿蒙Next系统中,若遇到反复录音的问题,可能是由以下几个因素导致:

  1. 应用权限问题:请检查录音应用是否已授予必要的麦克风权限。在鸿蒙系统的“设置”中,找到“应用和服务”,选择对应的应用,查看并确认麦克风权限已开启。

  2. 系统缓存问题:系统缓存可能导致应用行为异常。尝试重启设备,或进入“设置”中的“系统和更新”,选择“重置”,点击“还原所有设置”(注意,此操作不会删除数据,但会重置所有系统设置)。

  3. 应用版本不兼容:若录音应用未适配鸿蒙Next系统,可能出现功能异常。检查应用是否有更新版本,或联系应用开发者了解兼容性情况。

  4. 系统Bug:若上述方法均无效,可能是鸿蒙Next系统的Bug导致。关注华为官方发布的系统更新,及时升级至最新版本,可能包含对此问题的修复。

如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部