原因:
1.可能没有加上权限。加上 <uses-permission android:name="android.permission.RECORD_AUDIO" />
2.设置的缓冲区大小写死了,可能小于了设备的最小缓冲区大小。通过AudioRecord.getMinBufferSize(RECORDER_SAMPLERATE,RECORDER_CHANNELS,RECORDER_AUDIO_ENCODING)获取最小缓冲区大小。android手机的录音的最小的缓冲区大小是不相同的,如果把大小写死了很可能这个手机能成功运行起来,到了其他的手机就不能运行起来了。