android studio MediaRecorder: start called in an invalid state: 4

_record.setAudioSource(MediaRecorder.AudioSource.MIC);

    //设置输出文件的格式如3gp、mpeg4等
    _record.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);

    //设置音频编码器,程序中设定音频编码为AMR窄带编码
    _record.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);

    FileName = DateFormat.format("yyyyMMdd_HHmmss", Calendar.getInstance(Locale.CHINA)) + ".m4a";
    File destDir = new File(Environment.getExternalStorageDirectory()+"/test/");
    if (!destDir.exists()) {
        destDir.mkdirs();
    }
    FilePath =  Environment.getExternalStorageDirectory()+"/test/"+ FileName;

    _record.setOutputFile(FilePath);

// FilePath = Environment.getExternalStorageDirectory().getAbsolutePath();
// FileName = FilePath + “/myvideo.mp4”;

    Log.v("VoiceRecord FileName", FileName);
    Log.v("VoiceRecord FilePath", FilePath);

	Log.v("startRecord _record",  "_record:" + _record);
	//准备开始,这就在start前,必须调用
	try {
		_record.prepare();
	} catch (IOException e) {
		Log.v("VoiceRecord", " prepare failed");
	}

在小米MIX 2S这个机型中会出现start called in an invalid state: 4, 在_record.prepare();这一步就会准备失败