안녕하세요, 안드로이드 이제 갓 입문한 초보입니다.
현재 코딩중인 프로그램이 부하가 많이 발생해서 30분 이상 돌아가면 app이 죽거나 폰이 너무 뜨거워지거나 App이 심하게 버벅거리는 문제가 발생됩니다.
센서 관련 프로그래밍을 하고 있는데, 센서를 3~4개 가량 DELAY_FASTEST로 돌리고 이를 Listener로 받다 보니 App의 부하가 굉장히 생기는 것 같습니다. (각 센서별로 1초에 약 60~100개 정도의 event 발생)
하지만 이 부분은 어떻게 개선을 해야 할지 막막하네요.
또 한가지 문제는 File IO 관련인데, 1초에 약 200~300 line 정도를 Text file에 write 해주는 작업을 합니다.
이 부분에서도 굉장히 많은 부하가 걸리는 것 같습니다.
App 속도 및 안정성 개선을 위해서 질문 드립니다.
1. 1초에 400개정도 event가 올라오는 Sensor Listener의 경우 속도 및 안정성을 개선할 방법이 없을까요? (따로 Thread를 돌려야 한다든지...)
2. File 입력 같은 경우, 매번 Write 해주는게 성능에 악 영향이 있을 것 같아서 StringBuilder에 담아놓고 1Mb가 차면 그때마다 BufferedWriter로 Write를 합니다.
처음에는 StringBuilder에 계속 넣어놓고 있다가 App 빠져나갈때 쓰게끔 했더니, StringBuilder에서 OOM crash가 자주 발생됩니다.
좋은 방법이 있을까요?