那個(gè)計(jì)時(shí)和獲取音量的線程
鴻洋,那個(gè)計(jì)時(shí)和獲取音量的線程,當(dāng)event.down的時(shí)候,你沒(méi)有讓這個(gè)線程停止啊,為什么你這里測(cè)試就沒(méi)事,我這里測(cè)試就報(bào)錯(cuò)了,因?yàn)槭种钙饋?lái)之后,MediaRecorder就release了,已經(jīng)置空,獲取不了音量,空指針了。我一直在嘗試停止線程,但總是出錯(cuò),還是我看漏了你在哪里寫(xiě)代碼停止了這個(gè)線程了?鴻洋老師你能不能說(shuō)一下。。
2015-05-11
線程內(nèi)部設(shè)置了while(isRecording),在Up的時(shí)候isRecording = false了。當(dāng)MediaRecorder準(zhǔn)備好時(shí),再次開(kāi)啟:
2016-04-04
while?(isRecording)?{ //如果在錄音那么就每隔一秒獲取一次音量 try?{ Thread.sleep(100);//?誒個(gè)每隔0.1秒獲取一次 mTime?+=?0.1f; handler.sendEmptyMessage(MSG_VOICE_CHANGE);//?發(fā)送消息給handle }?catch?(InterruptedException?e)?{ //?TODO?Auto-generated?catch?block e.printStackTrace(); } }2016-04-04
教程里面忘記寫(xiě)了,應(yīng)該在線程里加一個(gè)while(isRecording)的判斷。視頻里面沒(méi)有加!,下面我貼出來(lái)代碼,希望能夠幫助到后來(lái)的學(xué)者
while (isRecording) {
//如果在錄音那么就每隔一秒獲取一次音量
try {
Thread.sleep(100);// 誒個(gè)每隔0.1秒獲取一次
mTime += 0.1f;
handler.sendEmptyMessage(MSG_VOICE_CHANGE);// 發(fā)送消息給handle
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
2015-07-09
同問(wèn)。。
2015-05-12
鴻洋老師,我也是這個(gè)線程空指針異常問(wèn)題,為何我要判空,你的不需要?