首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >世博会Audio.Recording无法读取未定义的属性“uri”

世博会Audio.Recording无法读取未定义的属性“uri”
EN

Stack Overflow用户
提问于 2020-04-10 15:32:49
回答 1查看 480关注 0票数 0

我正试图在世博会上开始一段新的录音,但由于一些奇怪的原因,这个应用程序崩溃了。我编写的代码基本上是复制粘贴从官方博览会文档。

代码语言:javascript
复制
import React, { useState, useEffect } from 'react';
import { Audio } from 'expo-av';
import PitchFinder from "pitchfinder";
import { StyleSheet, Text, View, Button } from 'react-native';

const Tuner = () => {
    const pitchFinder = new PitchFinder.YIN();
    const start = async () => {
        const recording = new Audio.Recording();
        console.log(recording)
        await recording.prepareToRecordAsync(Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY);
        await recording.startAsync();
        const audio_stream = recording.getURI();
        console.log(audio_stream);
        await recording.stopAndUnloadAsync();
    }
    return (
        <View>
            <Button title="Start recording" onPress={() => start()} />
        </View>
    )
};

export default Tuner;

该应用程序在await recording.prepareToRecordAsync(Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY);上崩溃时出现错误

未处理拒绝(TypeError):无法读取未定义

的属性'uri‘

EN

回答 1

Stack Overflow用户

发布于 2020-04-10 15:41:17

请再次检查世博会文件,检查许可

https://docs.expo.io/versions/latest/sdk/audio/

试着

代码语言:javascript
复制
  const recording = new Audio.Recording();
    try {
      await recording.prepareToRecordAsync(Audio.RECORDING_OPTIONS_PRESET_HIGH_QUALITY);
      await recording.startAsync();
      // You are now recording!
    } catch (error) {
      // An error occurred!
    }
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61143575

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档