2012-06-12 2 views
1

Android 기기 용 뮤직 시퀀서 앱을 만들려고 노력 중이며 견고한 타이밍 기능을 얻는 방법에 대해 조언 해 주시면 감사하겠습니다.Android에서 안정적이고 정확한 타이밍

Runnable을 Handler.postDelayed에 전달하고 x 밀리 초의 지연 시간을 지정하면 해당 Runnable이 정확히 x ms 시간에 실행되도록 보장됩니까?

안정적이고 정확한 타이밍을 처리기로 얻을 수 없다면 어떤 다른 옵션을 사용할 수 있습니까?

고맙습니다.

답변

1

많은 내가 여기에 대한 답변을 찾을 관리 인터넷 검색 후 :

http://masterex.github.com/archive/2012/05/28/android-audio-synthesis.html

핸들러에 Thread.sleep() 및 타이머 보인다 갈 방법이 없습니다.

답장을 보내 주셔서 감사합니다. 죄송합니다. 조만간 인정하지 않으셔서 잠시 떨어져 있습니다.

+0

처리기, Thread.sleep() 및 타이머가 갈 방법이 아니면 ... 그 밖의 무엇입니까? 링크를 보았지만 TLDR입니다. –

1

"하드 실시간"프로그래밍이 가능하지 않습니까? 선택권은 무언가가 생길 때 신호하는 사건을 찾는 것처럼 보입니다. 이것은 자신의 플래그를 작성하고 다른 스레드에서 해당 플래그의 값을 폴링하여 수행 할 수 있습니다.

CountDownTimer를 사용하여 밀리 초 단위로 전달해야하는 특정 시간을 지정할 수 있습니다.

시간이 경과 한 시간을 폴링하여 시스템 시계를 사용하고 자신의 타이머를 만들 수 있습니다.

FileObserver라는 유용한 클래스를 사용하면 특정 파일을보고 Opened 및 Closed와 같은 이벤트를들을 수 있습니다. 이러한 신호를 사용하면 다음 작업으로 이동할 때임을 알 수 있습니다.

가장 심각한 버그는 특정 하드웨어에서만 발생하지만 대부분 발생하지는 않는 타이밍 문제입니다. 문제가 내가 그들 모두를 소유하지 않고 타이밍 문제를 찾는 것이 어렵다면. 저는 다른 사람들이이 문제에 대해 더 나은 답변을 갖기를 희망합니다.

관련 문제