Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/229.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java android.media.AudioRecord;错误_Java_Android - Fatal编程技术网

Java android.media.AudioRecord;错误

Java android.media.AudioRecord;错误,java,android,Java,Android,我试图在android应用程序中为我的吉他制作一个调谐器。 为此,我使用了库AudioRecord.java,但在编译时出现了一个错误: 07-03 13:48:49.041 2391-2426/? E/AudioRecord: AudioFlinger could not create record track, status: -1 07-03 13:48:49.044 2391-2426/? E/AudioRecord-JNI: Error creating AudioRecord in

我试图在android应用程序中为我的吉他制作一个调谐器。 为此,我使用了库AudioRecord.java,但在编译时出现了一个错误:

07-03 13:48:49.041 2391-2426/? E/AudioRecord: AudioFlinger could not create record track, status: -1
07-03 13:48:49.044 2391-2426/? E/AudioRecord-JNI: Error  creating AudioRecord instance: initialization check failed with status -1.
07-03 13:48:49.044 2391-2426/? E/android.media.AudioRecord: Error code -20 when initializing native AudioRecord object.

      --------- beginning of crash
07-03 13:48:49.046 2391-2426/? E/AndroidRuntime: FATAL EXCEPTION: Thread-5
    Process: com.example.gaetan.tuner, PID: 2391
    java.lang.IllegalStateException: startRecording() called on an uninitialized AudioRecord.
        at android.media.AudioRecord.startRecording(AudioRecord.java:976)
        at com.example.gaetan.tuner.audio.CaptureThread.run(CaptureThread.java:34)
在AudioRecord.java中我可以看到

import android.os.ServiceManager; cannot be resolved 

我能做些什么来改变这一点?

问题可能与支持的采样率有关。下面的代码将为您提供一个谓词,用于检查所需的采样率是否受支持

        int sampleRate = 44100;
        int bufferSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_CONFIGURATION_DEFAULT, AudioFormat.ENCODING_PCM_16BIT);

        if (bufferSize > 0) {
            //the sample rate is supported so create your AudioRecord
        } else {
            // sample size is not supported
        }

有关支持多个采样率的更高级版本,请参见给出的答案,该问题可能与支持的采样率有关。下面的代码将为您提供一个谓词,用于检查所需的采样率是否受支持

        int sampleRate = 44100;
        int bufferSize = AudioRecord.getMinBufferSize(44100, AudioFormat.CHANNEL_CONFIGURATION_DEFAULT, AudioFormat.ENCODING_PCM_16BIT);

        if (bufferSize > 0) {
            //the sample rate is supported so create your AudioRecord
        } else {
            // sample size is not supported
        }

有关支持多采样率的更高级版本,请参见给出的答案

看起来像运行时异常,而不是编译错误请显示您的代码!缺少的导入是just,IDE Issue我想使用这段代码,在capturaRead.java中我们使用了库AudioRecord在AudioRecord.java中的第29行中无法找到导入,并在第277行(GetCapturPreset())或第279行(getTags())处出错,例如无法找到类似RuntimeException的书籍,不是编译错误,请显示您的代码!缺少的导入是just,IDE Issue我希望使用此代码,在capturaRead.java中,我们使用了库AudioRecord。无法找到AudioRecord.java中第29行的导入,并且在第277行(GetCapturPreset())或第279行(getTags())处出错,例如找不到