最新回答 / 夏Jue
你應該不是指觸發(fā)onLongClick后還延遲吧。如果不是的話,那就是正?,F(xiàn)象。因為第一要等待onLongClick觸發(fā)需要時間。第二要等待MediaRecorder ?prepare完成需要一點點時間。
2017-06-02
第一:Dialog不顯示的問題: 個人在經(jīng)過調(diào)試之后發(fā)現(xiàn),AudioManager類的prepareAudio()方法里,到mMediaRecorder.prepare(); mMediaRecorder.start();之前都不會出錯,而問題就出在這里,我們按住Ctrl點進去prepare()和start()這兩個方法里會發(fā)現(xiàn)他們一共拋出來兩個異常IllegalStateException, IOException,而我們的代碼是統(tǒng)一捕獲Exception,所以我嘗試兩個分開捕獲并明確捕獲的異常類型結果OK,Dialog可以正常顯示出來。至于什么原因,我暫時還沒弄懂。
2017-03-26
第二:關于UP后報錯的問題:
在經(jīng)過個人調(diào)試之后發(fā)現(xiàn),問題出在AudioManager的release()方法里,這個方法里調(diào)用了兩個原生的方法stop()和release(),我們同樣按住Ctrl點進去stop()會發(fā)現(xiàn)這個方法拋出了一個IllegalStateException,而我們在調(diào)用這個方法的時候并沒有捕獲,于是我try catch處理,運行,OK。
以上是本人在處理這兩個問題的方案,希望
在經(jīng)過個人調(diào)試之后發(fā)現(xiàn),問題出在AudioManager的release()方法里,這個方法里調(diào)用了兩個原生的方法stop()和release(),我們同樣按住Ctrl點進去stop()會發(fā)現(xiàn)這個方法拋出了一個IllegalStateException,而我們在調(diào)用這個方法的時候并沒有捕獲,于是我try catch處理,運行,OK。
以上是本人在處理這兩個問題的方案,希望
2017-03-26