簡體   English   中英

如何在Android Studio中對錄制音頻進行線程處理?

[英]How to thread process recording audio in Android Studio?

我正在使用AudioRecord對象,並且在AudioRecord.OnRecordPositionUpdateListener我正在實現AudioRecord.read以將數據寫入字節緩沖區,此后,我調用另一個對象的方法來處理字節緩沖區,然后將其返回以寫入文件,就是問題是對象的處理時間很長,似乎正在停止主線程,這很奇怪,我認為AudioRecord.OnRecordPositionUpdateListener是Threaded

除非明確說明,否則假設android中沒有線程。 UI線程上的所有回調。

通常的方法是在應用程序的onCreate或onStart中啟動一個線程,然后等待主線程發出消息。 然后,您對onMarkerRead的實現(或您需要的任何其他函數)將向該線程發送一條消息。 每當調用通知功能時,您都可以創建一個線程,但是保持該線程的位置避免了每次收到通知時在OS級別創建線程的開銷。

避免在此處使用AsyncTasks。 它們聽起來像是正確的解決方案,但是由於所有應用程序任務都是單線程的,因此可以無限期地保留它們。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM