为了账号安全,请及时绑定邮箱和手机立即绑定

长按不能显示diaolog了

有一个问题,长按不能显示diaolog了,这是因为AudioManager中的prepare中这个方法体都写在try catch中,导致方法体执行不了 最后我的解决方法是只try catch   mediaRecorder.prepare();mediaRecorder.start();   就解决了。具体为什么我也不知道为什么,求解决!

正在回答

1 回答

  这个问题我也碰见了,你的那边的错误提示应该是空指针吧? 那么具体是为什么呢? 其实是你上面对于MediaRecorder前面的几步参数的设置出现了错误。导致调用prepare的时候出现错误。那么如果你的try和这个老师一样,扩住了全部的代码的话,那么后面的回调mListener.wellPrepared();哪里也不能执行。你可以试试单独吧这个方法拿出try里面,应该就能出现对话框了。当然,这个并不是解决办法,因为这样的话,你的录音根本就没有录进去。 我没有看你的代码。所以我不知道你的问题在哪里,反正你反复的看mediaRecorder.prepare();方法之前的设置mediaRecorder的那些方法,你有没有写错。或者你的路径有没有,还有你的权限添加了没有。 我那天就是

if (!dir.exists())
   dir.mkdirs();

上面判断我的dir是否存的在时候,我少些了一个感叹号。当时这个视频比较快。但是我跟着写的时候,我知道自己感叹号没写,想先跟着写,到时候再回来加上。结果后来忘记了。 然后就一直报空指针。还是在dialog那个类里面的错误。 找了二十分钟才找出来,原来wellPrepared根本就没有运行。 所以,耐心点找。肯定能找到错误的。

0 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Android-仿微信语音聊天
  • 参与学习       43200    人
  • 解答问题       220    个

结合自定义View和API,Dialog管理等实现实现微信语音

进入课程

长按不能显示diaolog了

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信