Android MediaRecorder GetMaxAmplium始终在像素XL上返回0
下面给出的代码在三星和荣誉等其他设备上运行良好,但在谷歌Pixel XL上不起作用。像素设备记录器中。GetMaxAmplificate()始终返回0Android MediaRecorder GetMaxAmplium始终在像素XL上返回0,android,android-studio,android-mediaplayer,android-mediarecorder,Android,Android Studio,Android Mediaplayer,Android Mediarecorder,下面给出的代码在三星和荣誉等其他设备上运行良好,但在谷歌Pixel XL上不起作用。像素设备记录器中。GetMaxAmplificate()始终返回0 MediaRecorder recorder = new MediaRecorder(); recorder.setAudioSource(MediaRecorder.AudioSource.MIC); recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
MediaRecorder recorder = new MediaRecorder();
recorder.setAudioSource(MediaRecorder.AudioSource.MIC);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
Timer timer = new Timer();
timer.scheduleAtFixedRate(new RecorderTask(recorder), 0, 500);
recorder.setOutputFile(fileName);
try {
recorder.prepare();
recorder.start();
} catch(IllegalStateException e)
{
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
private class RecorderTask extends TimerTask {
private MediaRecorder recorder;
public RecorderTask(MediaRecorder recorder) {
this.recorder = recorder;
}
public void run() {
runOnUiThread(new Runnable() {
@Override
public void run() {
int amplitude = recorder.getMaxAmplitude();
Log.d("amplitude",""+amplitude);
}
});
}
}